当前位置: 首页 > news >正文

快速建设网站免费视频教程软件应用开发

快速建设网站免费视频教程,软件应用开发,中国外贸网,广西南宁时空网首页差不多根据mybatis中文文档:创建第一个mybatismaven项目,将它跑起来 入门_MyBatis中文网 新建库 建表 创建项目 重启之后 配置下Maven与encoding 成习惯了 新建模块 注意:这个GroupId和ArtifactId version是之后,你用Maven install时候后存放的包路径和包名 目录结构:虽然换…差不多根据mybatis中文文档:创建第一个mybatismaven项目,将它跑起来 入门_MyBatis中文网 新建库 建表 创建项目 重启之后 配置下Maven与encoding  成习惯了 新建模块 注意:这个GroupId和ArtifactId  version是之后,你用Maven install时候后存放的包路径和包名 目录结构:虽然换了JDK17但是编译器版本好像不行,IDEA版本可能低了 突然发现maven不见了 输入 Maven projects 选中对应的pom.xml maven回来了 我还是把JDK换成8算了 官网意思,从XML中构建SqlSessionFactory 也就是说,这个XML其实是在配置SqlSessionFactory 也讲了不使用XML配置的方式 先按XML进行配置 在Resources下新建mybatis-config.xml文件名无所谓 这里讲下:有些配置文件好比一个模板,经常要使用,可以通过idea配置一下一些常用文件的模板 以便下次使用时候,可以直接创建,具体方式 IDEA常用模板文件配置_biubiubiu0706的博客-CSDN博客 这里我就按Mybatis入门复制了 把JDBC连接的驱动,URL,用户名,密码先整上 接下来 下面编写Mybatis程序 执行之后发现数据库没插入 原因是Mybatis默认获取的sqlSession对象是不支持默认提交的 看下SqlSessionFactory和sqlSession的实现类是哪个   --------DefaultSqlSessionFactory和DefaultSqlSession  对源码有兴趣的可以看看 一般情况下都是一个数据库对应一个SqlSessionFactory对象 几个细节: mybatis核心配置文件命名可以随自己,放的位置也可以随自己(出于程序健壮性,可移植性,最好放在resources目录下) mybatis的xxxMaper.xml里的sql语句可以;(分号结尾)也可以省略不写 通过同一个SqlSessionFactory对象可以获得多个不同sqlSession对象 Resources.getResourceAsStream(mybatis-config.xml);这个是mybatis封装的API,一般遇到Resources说明都是resources目录下的,加入你的mybatis配置文件在resources下的xxx包下yyy.xml 那么 InputStream inputStream Resources.getResourceAsStream(xxx/yyy.xml); 获取到一个输入流 然后将输入流放到build方法内 SqlSessionFactory sqlSessionFactory sqlSessionFactoryBuilder.build(inputStream); 那么能不能自己new个流呢?也是可以的,比如将配置文件放在D盘某目录下 InputStream innew FileInputStream(d:\\mybatis-config.xml) 或者InputStream innew FileInputStream(d:/mybatis-config.xml) 但是这样的缺点是就是移植性差,放到苹果电脑就不行了 指定resouces目录下,到哪里都可以用. 另外加载mybatis核心配置文件还有一种方式用类加载器去获得系统类加载器调用getResourceAsStream(文件名)的方式 InputStream inClassLoader.getSystemClassLoad().getResourceAsStream(mybatis-config.xml); 其实也可以直接这样InputStream inClassLoader.getSystemResourceAsStream(mybatis-config.xml); !--resource属性会自动从类的根路径下开始查找资源-- !-- 1.package name包名 标签用于自动扫描指定包下的映射文件要求映射文件名和接口名保持一致并且映射文件.xml和接口需要在同一个包中否则会报错。 2.mapper class 标签的class属性用于注册映射文件同样要求映射文件名和接口名保持一致并且映射文件.xml和接口需要在同一个包中否则会报错。 3.mapper resourceorg/xx/demo/mapper/xx.xml/ 标签用于注册映射文件与上述两种方式不同这种方式不要求映射文件名和接口名一致。这里是通过命名空间(namespace)和mapper接口对应的命名空间要与接口的全限定名保持一致。 4.mapper urlfile:///d:/CarMapper.xml /是绝对路径加载映射文件的而且 .xml 文件的名称并不需要和接口名称相同。通过命名空间指定和接口关系 -- !--告诉mybatis去哪里找mapper文件-- mappersmapper resourcemapper/CarMapperABC.xml/ /mappers 关于Mybatis的事务管理机制 !--transactionManager:事务管理器type取值有两种:1:typeJDBC,使用java.sql.Connection管理事务2:typeMANAGED,文档解释,几乎什么都不做,它不提交或回滚一个连接,而是让容器来管理事务的整个生命周期--!--mybatis提供了两种事务管理机制1.JDBC(可小写)事务管理器:mybatis框架自己管理事务,实际就是采用原生JDBC代码管理事务好比写JDBC时: conn.setAutoCommit(false);......业务处理......conn.commit();手动提交2.MANAGED(可小写)事务管理器mybatis不再管理事务,事务交给其他容器负责:例如Spring但是这里用MANAGED,因为没有容器好比事务没有开启,就会变成没有事务这回事,直接干了 --transactionManager typeJDBC/ 如果使用的事务管理器类型是JDBC的话 SqlSession sqlSession sqlSessionFactory.openSession(); 这句代码底层会执行conn.setAutoCommit(false); 如果使用的事务管理器类型是MANAGED的话,交给容器管理.比如交给Spring管理了.一般就是没有事务了,自动提交了 openSession有个重载方法: SqlSession sqlSession sqlSessionFactory.openSession(true);意思是自动提交 在JDBC事务中,如果没有设置conn.setAutoCommit(false);的话conn.getAutoConmmit()本身就是true; 经过上面介绍,写一个差不多完整版本的Mybatis入门程序 为了以后测试方便,不需要测试一个就写个main方法,引入JUnit(单元测试) 新建个模块测试Junit Maven项目 引入依赖 比如说需要对该业务方法进行测试 在test包下建测试类     这个断言挺好用 Mybatis中引入junit 在单元测试中编写Mybatis程序 可以看到现在没有日志输出 关于Mybatis集成日志框架logback.可以让调试更加方便 下面记录是以前的学习记录 另外说一下 在配置文件里  点进去  有个标签的顺序问题,需要按顺序来 关于在配置文件里Mybatis集成日志框架logback. 在官方文档设置里 这样就有日志输出了 但是详细时间,线程名称,如果想使用更加丰富的日志,可以集成第三方依赖 SLF4(沙拉风):沙拉风是一个日志标准,其中有一个框架叫做logback,它实现了沙拉风规范 LOG4J: LOG4J2: STDOUT_LOGGING:Mybatis内置标准日志实现 .... 注意:SLF4,LOG4J,LOG4J2作者是同一个人 修改Mybatis配置文件     注意如果用第三方依赖  这个settings可以不配置   这里不配置也是可以的 其实不需要配置   除非用内置 引入jar包 然后引入logback所必须的xml配置文件 这个配置文件必须叫做:logback.xml或者logback-test.xml,不能是其它的名字. 这个配置文件必须放在类的根目录下.不能是其他位置 logback.xml代码 ?xml version1.0 encodingUTF-8? configuration debugfalse!--定义⽇志⽂件的存储地址--property nameLOG_HOME value/home/!-- 控制台输出 --appender nameSTDOUT classch.qos.logback.core.ConsoleAppenderencoder classch.qos.logback.classic.encoder.PatternLayoutEncoder!--格式化输出%d表示⽇期%thread表示线程名%-5level级别从左显示5个字符宽度%msg⽇志消息%n是换⾏符--pattern%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{50} - %msg%n/pattern/encoder/appender!-- 按照每天⽣成⽇志⽂件 --appender nameFILE classch.qos.logback.core.rolling.RollingFileAppenderrollingPolicy classch.qos.logback.core.rolling.TimeBasedRollingPolicy!--⽇志⽂件输出的⽂件名--FileNamePattern${LOG_HOME}/TestWeb.log.%d{yyyy-MM-dd}.log/FileNamePattern!--⽇志⽂件保留天数--MaxHistory30/MaxHistory/rollingPolicyencoder classch.qos.logback.classic.encoder.PatternLayoutEncoder!--格式化输出%d表示⽇期%thread表示线程名%-5level级别从左显示5个字符宽度%msg⽇志消息%n是换⾏符--pattern%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{50} - %msg%n/pattern/encoder!--⽇志⽂件最⼤的⼤⼩--triggeringPolicy classch.qos.logback.core.rolling.SizeBasedTriggeringPolicyMaxFileSize100MB/MaxFileSize/triggeringPolicy/appender!--mybatis log configure--logger namecom.apache.ibatis levelTRACE/logger namejava.sql.Connection levelDEBUG/logger namejava.sql.Statement levelDEBUG/logger namejava.sql.PreparedStatement levelDEBUG/!-- ⽇志输出级别,logback⽇志级别包括五个TRACE DEBUG INFO WARN ERROR --root levelDEBUGappender-ref refSTDOUT/appender-ref refFILE//root /configuration测试
http://www.hkea.cn/news/14306768/

相关文章:

  • 电子商务网站建设与管理课后习题金华网站建设解决方案
  • 单招网站开发基础知识孝感做网站公司
  • 企业网站建设方案书 范本做外贸一般要注册哪些外贸网站
  • 福州网站建设团队iis wordpress ftp
  • 1688企业网站建设内江做网站
  • 郴州建设信息网站高质量的佛山网站模板
  • 教育网站建设网福州seo网址优化公司
  • 上海企业建设网站价格网页链接怎么转换成pdf
  • 付运费送东西的网站怎么做兖州网站建设推广
  • 简洁游戏企业网站成都小程序商城开发公司
  • 网站建设与维护的题目小网站模板下载地址
  • 品牌好的佛山网站建设价格vi设计公司联系方式
  • 如何微信做演讲视频网站陕西泰烜建设集团网站
  • 廊坊网站制作网页广告宣传费一般多少钱
  • 网站建设时间进度福田公司网站建设
  • 东营 网站 建设网站下面版权代码
  • 做的好的食用菌公司网站有滁州建设厅网站
  • 深圳建网站兴田德润团队沧州网站seo公司
  • 网站制作的核心是什么怎样制作wordpress主题汉化包
  • 做电影网站怎么接广告sem是什么职业
  • 网站怎么加载图片做logo山东省机关建设网站
  • 自贡市建设局网站石家庄外贸网站建设
  • 网站建设公司的出路蝴蝶传媒网站推广
  • 在招聘网站做销售技巧如何推广网站会员注册
  • 深圳市住房城乡建设局网站app下载入口
  • 网站上传可以发广告的100个网站
  • 医院网站后台管理系统登录住房城乡建设部官网
  • 搭建个人网站的步骤做外贸 是否需要做中文网站
  • 有什么网站可以做微信支付宝支付如何自己创造网站
  • 做旅游网站怎么做呀网站建设笔记