接(1)的内容往下继续总结,从后端的数据库出发
数据库设计需要有所讲究,最好是先定好项目大致所需要的表,然后设计主键和关联用的外键,写好约束以及一系列定义,再根据项目实际的开发情况进行修改,我这项目所给的数据库已经是他人写好的可以直接用的,这里提一嘴;
数据库的操作语句通常是在Mapper这个接口以及它同名的xml文件中,注意是同名且要在xml文件中指定接口的位置,这样在通过接口调用数据库操作方法时才能生效执行,这是非常非常基础的内容了。
然后就是数据库的sql语句这里了,也是很基础的内容,我学过,但是考过就忘了大部分,只留下几个非常深刻的语句
<select id="你要指定的方法" resultType="你指定的接收数据类型" parameterType="你指定的发送的数据类型">
select * from 你指定的要访问的数据表 where 你指定条件
</select>
<insert id="你指定的方法" parameterType="你指定的发送数据类型">
insert into 你指定的数据表(括号内可以选择表的相应字段) values(括号里面指定跟字段对应的数据)
</insert>
<update id="你要指定的方法" parameterType="你指定的发送数据类型">
update 你指定的数据表 set 哪个字段的数据发生变化 where 条件
</update>
//数据库里用#{某方法传入数据名来指向该数据内容}
实际上还有其他数据库sql语句的操作,但是这也是基础知识,只能靠自己的记忆和理解了,desc、order by这种最起码得理解用法和含义
Mapper接口中方法里对传入数据有一个定义
void test(@Param("id") 数据类型 数据);
//这里的id指向了同名的xml文件的方法中的数据id,用来一一对应防止差错,一般用于二个及以上传入数据情况
然后就说说我这个实训接触到的一个我之前可能用过但是完全不了解的东西
<resultMap id=”” type=”数据类型” >
<id property=”” column=””> </id>
<result property=”” column=””></result>
<association property=”” column=”” javaType=”” select=””></association>
<collection property=”” column=”” ofType=”” select=””></collection>
</resultMap>
/*属性说明:
<resultMap> : id : 可以随意指定
<resultMap>: type : 指定整个查询结果的最后类型
<id> : 主键 标签
<id> : property : 主键所对应的java实体类的 成员变量
<id> : column : 主键所对应的数据库表的字段名
<result> : 普通字段标签
<result> : property : 普通字段对应的java实体类的 成员变量
<result> : column : 普通字段所对应的数据库的字段名
<association> : 1 对 1 时 所使用的标签
<association> : property : 此外键对应的实体类的成员变量
<association> : column : 此外键对应的数据库表的字段名
<association> : javaType : 此外键对应的实体类类型
<association> : select 根据对应的接口的方法查询(传递column的值作为方法的参数)
<collection> : 1对多使用的标签
<collection> : property : 此字段对应的实体类的成员变量名
<collection> : column : 这里写的是这个表的主键
<collection> : ofType : 集合返回的Java数据类型
<collection> : select : 根据对应的接口的方法查询(传递column的值作为方法的参数)*/
//用处:1.数据库实体类与javabean不一致 2.多表查询,把数据封装到javabean中
在面对复杂的返回的互相关联数据,你又不希望在sql语句上进行过多的操作,那就利用这个元素和相关属性设置来达到目的
数据库大致就到这里,可能一些遗漏了,但这只是一次基础回顾总结,等到了深度的学习,会有新的知识收获也说不定
菜鸡的个人记录,如果有什么纰漏欢迎指正