- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
Mybatis 第一天课堂笔记Mybatis课程安排:第一天:Jdbc编程中的问题?Mybatis的框架原理(重点)Mybatis的第一个程序:实现用户信息的增、删、改、查。Mybatis如何解决jdbc编程的问题。与hibernate不同。mybatis开发dao两种方法:(重点)原始的dao开发方法(接口和接口实现)Mapper动态代码方法Mybatis的配置文件:SqlMapConfig.xml(全局配置文件)XXXXXMapper.xml(映射文件,重点)Mybatis动态Sql(重点)resultType(重点掌握)和resultMap区别。第二天:Mybatis关联查询:一对一查询一对多多对多Mybatis的缓存一级缓存二级缓存延迟加载Mybatis和springmvc整合(重点)原始的dao开发方法(接口和接口实现)Mapper动态代码方法Mybatis逆向工程(由数据库表生成类文件和映射文件)Jdbc编程中的问题写一个程序目标:通过jdbc程序找出当中的问题重视jdbc编程,企业在技术选型时对于小型的项目或性能要求较高的项目,优先选用jdbc开发。准备开发环境:Jdk1.7.72Eclipse indigo(3.7)Mysql5.1运行环境:Mysql5.1数据库驱动创建mysql数据库:代码如下:public class JdbcTest {//定义sql语句,根据名称查询用户表的记录private static String sql = SELECT * FROM USER WHERE username = ?;public static void main(String[] args) throws SQLException {//数据库连接Connection connection = null;//预编译statement//好处:防止 sql注入,提高数据的性能PreparedStatement preparedStatement = null;//结果集ResultSet resultSet = null;try {//加载数据库驱动Class.forName(com.mysql.jdbc.Driver);//连接数据库connection = DriverManager.getConnection(jdbc:mysql://localhost:3306/mybatis, root, mysql);//构造preparedStatementpreparedStatement = connection.prepareStatement(sql);//向preparedStatement中占位符的位置设置参数preparedStatement.setString(1, 张三);//发起数据库查询请求,得到结果集resultSet = preparedStatement.executeQuery();//遍历查询结果while(resultSet.next()){int id = resultSet.getInt(id);String username = resultSet.getString(username);Date birthday = resultSet.getDate(birthday);System.out.println(id+ +username++birthday);}} catch (Exception e) {e.printStackTrace();}finally{//释放资源if(resultSet!=null){resultSet.close();}if(preparedStatement!=null){preparedStatement.close();}if(connection!=null){connection.close();}}}}总结问题将sql语句硬编码到java代码中,如果修改sql语句,需要修改java代码,重新编译。系统可维护性不高。设想如何解决?能否将sql单独 配置在配置文件中。数据库连接频繁开启和释放,对数据库的资源是一种浪费。设想如何解决?使用数据库连接池管理数据库连接。向preparedStatement中占位符的位置设置参数时,存在硬编码(占位符的位置,设置的变量值)设想如何解决?能否也通过配置的方式,配置设置的参数,自动进行设置参数。解析结果集时存在硬编码(表的字段名、字段的类型)设想如何解决?能否将查询结果集映射成java对象。Mybatis框架Mybatis是什么?MyBatis 本是apache的一个开源项目iBatis, 2010年这个项目由apache software foundation 迁移到了google cod
您可能关注的文档
- 01-设计模式精解与案例分析高级版.doc
- 06226计算机辅助设计(二)复习思考题.doc
- 097dB58GHzCMOS全集成低噪声放大器设计.docx
- -再沸器介绍.doc
- 11-组合梁有限元分析.doc
- 12碳和碳的氧化物.doc
- 15分段制造检验.docx
- 15春福师《现代汉语(二)》在线作业一.doc
- 15春福师《教育原理》在线作业一.doc
- 15秋地大《多媒体计算机技术》在线作业一答案.doc
- 湖南省衡阳市第八中学2026届高三上学期第一次月考物理(原卷版).doc
- 浙江省普通高中尖峰联盟2026届高三上学期10月联考英语(原卷版).doc
- 四川省绵阳市南山中学实验学校2026届高三上学期10月月考英语(原卷版).doc
- 湖南省衡阳市第八中学2026届高三上学期第二次月考历史 Word版含解析.doc
- 福建中考物理5年(2021-2025)真题分类汇编:专题09 功和机械能(原卷版).doc
- 福建中考物理5年(2021-2025)真题分类汇编:专题10 内能及其利用(原卷版).doc
- 福建中考物理5年(2021-2025)真题分类汇编:专题07 压强(原卷版).doc
- 福建中考物理5年(2021-2025)真题分类汇编:专题01 机械运动(原卷版).doc
- 福建中考物理5年(2021-2025)真题分类汇编:专题02 声现象(解析版).doc
- 福建中考物理5年(2021-2025)真题分类汇编:专题02 声现象(原卷版).doc
原创力文档


文档评论(0)