1.为什么我们学习框架?
提高开发效率,框架是别人写好的工具类,我们需要遵循其规则进行操作
2.我们学习哪些框架
A.持久层框架:MyBatis
什么是持久化?
狭义:把数据永久性的保存到数据当中
广义:针对于数据库的所有操作都称为持久化操作
CreateReadUpdateDelete操作
面试:持久层框架?MyBatis Hibernate
Object【Java对象】 Relation【数据库】 Mapping【映射-通过框架来映射对象和数据中的表和字段的关系】框架?
MyBatis和Hibernate之间的区别?
MyBatis是半自动化,需要我们私人定制SQL语句进行CRUD的操作
Hibernate全自动化,只是我们针对于对象的操作即可
B.Web层框架:SpringMVC 用来替换Servlet
Struts2 和SpringMVC的区别?
C.容器框架:Spring
一站式服务,IoC和AOP的容器框架
3.如何学习框架?
A.找到需要的jar
B.核心配置文件
C.通过API进行简单的示例操作和CRUD
MyBatis和IBatis的差别
IBatis是指IBatis2.0版本之前
MyBatis-->IBatis3.0
MyBatis其实就是对JDBC的封装
MyBatis 是支持定制化 SQL、存储过程以及高级映射的优秀的持久层框架。MyBatis 避免了几乎所有的 JDBC 代码和手动设置参数以及获取结果集。MyBatis 可以对配置和原生Map使用简单的 XML 或注解,
将接口和 Java 的 POJOs(Plain Old Java Objects,普通的 Java对象)映射成数据库中的记录。
对象对应的是记录
MyBatis的核心配置文件
目前我们学习阶段只用其干两件事情:
A.配置数据库的连接信息
相应的jar包不多说,官网都有
config.xml
1 <?xml version="1.0" encoding="UTF-8"?> 2 <!DOCTYPE configuration 3 PUBLIC "-//mybatis.org//DTD Config 3.0//EN" 4 "http://mybatis.org/dtd/mybatis-3-config.dtd"> 5 <configuration> 6 <properties resource="xy37/jdbc.properties"/> //下面的配置文件,方便项目维护 7 <environments default="development"> 8 <environment id="development"> 9 <transactionManager type="JDBC"/> 10 <dataSource type="POOLED"> 11 <property name="driver" value="${shxt.driver}"/> 12 <property name="url" value="${shxt.url}"/> 13 <property name="username" value="${shxt.username}"/> 14 <property name="password" value="${shxt.password}"/> 15 </dataSource> 16 </environment> 17 </environments> 18 <mappers>
//对应的映射文件 19 <mapper resource="com/shxt/model/UserMapper.xml"/> 20 </mappers> 21 </configuration>
jdbc.properties
1 shxt.driver=com.mysql.jdbc.Driver 2 shxt.url=jdbc:mysql://127.0.0.1:3306/xy37_mss 数据库名称 3 shxt.username=用户名 4 shxt.password=密码
B.加载映射文件
如果映射文件有错,那么你的程序一定是错的
jdbc.properties
保存操作代码详解
通过主键进行查询
查询列表操作
更新操作第一种解决方案
UserMapper.xml中所有练习语句