发表于: 2017-10-26 23:58:12
1 706
今天完成的事情:
1.学习mybatis
2.写完CRUD的代码
由于重新详细的看了一遍mybatis,所以dao接口的方法可以看的懂了。然后业务层的方法还不是很清楚。
对于控制类就没有那么清楚了,只知道怎么写代码,然后不是很懂它的具体调用状况。
明天计划的事情:
继续任务四,慢慢来,现在不学好,迟早还是要看的。
遇到的问题:
1.就一些正常的不理解的一些问题,会在下面有所提到。
2.就是我把登录的代码和学生页面的代码分开建了两个实体类,接着所有的接口啊,实现类啊以及控制类啊都变成了两个,但是在注入问题上感觉无从下手,算来还是路径的问题。
dao接口的话是OK的。
但是mapper.xml文件的映射不知道怎么注入到Spring中。比如我现在有User和Student两个实体类,也就相应的有两个mapper文件。但是这里映射的时候,我都写成<property>标签,除非写在两个<bean>下面,不然会混淆调用的;但两个<bean>的话也会涉及怎么注入的问题。
唯一靠谱的办法就是把两个value中不同的地方用 * 来代替,不过应该不是这样的。
要不就换别的映射形式。
收获:
CRUD操作
其中dao层接口的方法
(1)增
代码:
1)id一般就写相应的方法名了。
2)在增加的过程中,有自增字段的酒不用添加了。
eg:id是自增long型的,然后表中有字段id,name,age,只需在表面后面跟上name和age两个字段就行了。
3)添加的时候,传过来的是一个对象。这里可以看出我的是一个Student对象
4)parameterType:传过来对象的类型。这里用该对象的全类名表示。
5){ }是一个占位符。增加操作中它里面的值从对象里面取,所以必须是对象里面的一个属性。
6)这个就是java里面的反射,以后有时间看看。
问题:
就像我是谁?我从哪里来?要到哪里去?这样的问题一样。parameterType代表参数类型,但是是谁把什么传过来的?从哪里传来的?为什么增加操作中传过来的是一个对象?要传到哪里去?
自己的理解:
就是用户把给数据库中添加传入一些字段,过程就是将这些字段封装在一个类里面,然后将类直接传过来,而这些字段就是这个类对象的属性。
疑问:
若只有一个字段,那她的参数类型是不是酒确定了。比如字段id,parameterType=“long”?
(2)删
代码:
好像有点对应上面的假设,不过还不知道可行不可行。
1)删除的话,占位符里面的值可以随便写,因为传过来的数据类型就一个,但一般还是会写id的。
2)传过来的数据类型就一个,没有任何的选择情况;不像添加的一样,传过来的是一个对象,里面有不同的对象属性,所以需要在{}里面注明。
(3)改
代码:
别的都差不多,就是后面的where不是很懂,难道是确定修改的是哪一行的吗?
(4)查
代码:
分别是查找一个和查找全部。
1)查找全部也就是列表展示,就常见的List的方法
2)与其他不同的是它有个结果类型resultType,当执行这个操作的时候,它会返回一个对象类型。就像数据列表一样。
评论