发表于: 2017-10-09 23:53:15

1 761


今天完成的事情:

1 JDBC和DBCP的区别 &index在大量数据情况下的查询效率

创建两个单个column(id)的表student1和student2,其中1添加id为索引

为了方便,只插入一个数据

插入20000条用时:


增加到5W

再增加5W

增加50W


(1)很明显用了DBCP数据池反而比较慢。。。

(2)有了index,查询速率(数据量/总耗时)随着数据量的增大而增大。


2

总结任务一(初步)

项目主要需求:DB设计 实现连接数据库进行增删改查的功能


细分为了29个步骤,第17步骤开始有点吃力,连接mysql以及框架的学习花了很久时间。


mysql和sql语句是作为数据库这端的知识支柱,另一端则是由java的DAO设计模式构成,初学者可以通过JDBC连接技术来感受DAO是如何与数据库沟通的。一般由实体类(对应数据表的结构),接口类(定义数据库操作的抽象方法),接口实现类(实现具体的接口方法),然后就是包含main方法的服务类(实现全部功能)。

Spring和Mybatis则带来了两种特别的手段来加强数据库连接技术。Spring作为一个轻量级框架,提供了诸如Core、Context、AOP、DAO等多个可分割的模块供我们灵活使用。Mybatis提供了一个新的解决sql语句传输的手段,可以仅仅通过xml或者注解来配置和映射JavaBeans到数据库中去。maven制定了一个项目的标准化构建框架,并且自带了打包服务(虽然里面坑很多)。

云服务器环节推荐使用xshell连接服务器,xftp5或者winscp传输文件。部署msql,java等等使用yum安装会比较省事。maven打包的事(例如配置文件不在规定位置没有打包进去、找不到main方法、依赖包同名文件覆盖)参考 http://blog.csdn.net/defonds/article/details/43233131 


例子:

使用Spring配置数据源:

    <!-- 导入属性配置文件 -->  

    <context:property-placeholder location="classpath:jdbc.properties" />  

   <!-- 配置数据源 -->

    <bean id="dataSource" class="org.springframework.jdbc.datasource.DriverManagerDataSource">  

        <property name="driverClassName" value="${jdbc.driverClassName}" />  

        <property name="url" value="${jdbc.url}" />  

    </bean>  


使用Mybatis映射Sql语句:

<sql id="selectAll" >

 select * from app1

</sql>

<select id="getById" parameterType="Application"  resultType="Application">

<include refid="selectAll"/>

 where id=#{id};

</select>

<select id="getByName"  parameterType="Application"  resultType="Application">

<include refid="selectAll"/>

 where name=#{name};

</select>


最后,Spring和Mybatis整合过程中仍留有很多细节需要深挖。事务处理这一块很薄弱,还要加强理解学习。本次任务学习仅仅是最为基础的DB设计练习,在日后仍要不断探索。


明天计划的事情: 

1貌似要上传到github啊

2寻求提高插入速度的方法


遇到的问题:

1插入速度好像应该要提高来着

2总结的还不够好,巩固之后再做打算。

收获:

1 在Junit测试中 添加这个注解,可以使测试按顺序进行

@FixMethodOrder(MethodSorters.NAME_ASCENDING)

2 总结过程中从知乎上找到了一个SSM框架的学习教程,再此记一笔 http://how2j.cn/k/ssm/ssm-tutorial/1137.html?tid=77


返回列表 返回列表
评论

    分享到