使用idea 搭建Spring+mybatis
1、file-new-project





项目的结构如下:

在WEB-INF 下面新建一个 文件夹lib
右键WEB-INF ,new-Directory

所需要的jar 包有:

lib下载地址:
网盘地址:https://pan.baidu.com/s/1YmDtsuhTQQp-HrZB3affGQ 提取码:26bs

然后右键 lib文件夹,选择Add as Library..

点击Ok,如下:

右键项目,new-Directory,

然后,右键刚刚新建的文件夹config,选择 Make Directory as..--->Sources Root

然后,在config 文件夹下面新建三个文件夹,分别是:mybatis,spring,sqlmapperk,并创建三个空的文件夹,如下图所示:

然后,在src 下面新建三个文件夹,po(用于放实体类),test(用于单元测试),dao,dao.impl
如图所示:

在config文件夹下面新建一个db.properties 和 log4j.properties

到这里,文件夹就弄好了.
下面进行开发内容:
1、config/mybatis/SqlMapConfig.xml
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE configuration
PUBLIC "-//mybatis.org//DTD Config 3.0 //EN"
"http://mybatis.org/dtd/mybatis-3-config.dtd">
<configuration>
<mappers>
<mapper resource="sqlmapper/UserMapper.xml"/>
</mappers>
</configuration>
2、config/spring/applicationContext.xml
<?xml version="1.0" encoding="UTF-8" ?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:mvc="http://www.springframework.org/schema/mvc"
xmlns:context="http://www.springframework.org/schema/context"
xmlns:aop="http://www.springframework.org/schema/aop"
xmlns:tx="http://www.springframework.org/schema/tx"
xsi:schemaLocation="
http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-3.2.xsd
http://www.springframework.org/schema/aop
http://www.springframework.org/schema/aop/spring-aop-3.2.xsd
http://www.springframework.org/schema/tx
http://www.springframework.org/schema/tx/spring-tx-3.2.xsd
http://www.springframework.org/schema/context
http://www.springframework.org/schema/context/spring-context-3.2.xsd
http://www.springframework.org/schema/mvc
http://www.springframework.org/schema/mvc/spring-mvc-3.2.xsd
"
> <!--加载配置文件-->
<context:property-placeholder location="classpath:jdbc.properties"/>
<context:property-placeholder location="classpath:log4j.properties"/> <!--配置数据源-->
<bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close">
<property name="driverClassName" value="${jdbc.driver}"/>
<property name="url" value="${jdbc.url}"/>
<property name="username" value="${jdbc.username}"/>
<property name="password" value="${jdbc.password}"/>
<property name="maxActive" value="10"/>
<property name="maxIdle" value="5"/> </bean>
<!--配置SqlSessionFactory-->
<bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">
<!--加载SqlMapConfig.xml配置文件-->
<property name="configLocation" value="mybatis/SqlMapConfig.xml"/>
<!--数据源-->
<property name="dataSource" ref="dataSource"/>
</bean> <!--注入UserInfoDaoImpl 接口实现类-->
<bean id="userInfoDao" class="com.wlc.dao.impl.UserMapperDaoImpl">
<property name="sqlSessionFactory" ref="sqlSessionFactory"></property>
</bean>
</beans>
3、编写UserMapper.xml
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd"
>
<mapper namespace="test">
<select id="findUserById" parameterType="java.lang.Integer" resultType="com.wlc.po.UserInfo">
select * from userInfo where id =#{id}
</select>
</mapper>
4、编写jdbc.properties
jdbc.driver=oracle.jdbc.OracleDriver
jdbc.url=jdbc:oracle:thin:@localhost:1521:orcl
jdbc.username=scott
jdbc.password=tiger
5、log4j.properties
log4j.rootLogger=INFO,Console,File
#定义日志输出目的地为控制台
log4j.appender.Console=org.apache.log4j.ConsoleAppender
log4j.appender.Console.Target=System.out
#可以灵活地指定日志输出格式,下面一行是指定具体的格式
log4j.appender.Console.layout = org.apache.log4j.PatternLayout
log4j.appender.Console.layout.ConversionPattern=[%c] - %m%n #文件大小到达指定尺寸的时候产生一个新的文件
log4j.appender.File = org.apache.log4j.RollingFileAppender
#指定输出目录
log4j.appender.File.File = logs/ssm.log
#定义文件最大大小
log4j.appender.File.MaxFileSize = 10MB
# 输出所以日志,如果换成DEBUG表示输出DEBUG以上级别日志
log4j.appender.File.Threshold = ALL
log4j.appender.File.layout = org.apache.log4j.PatternLayout
log4j.appender.File.layout.ConversionPattern =[%p] [%d{yyyy-MM-dd HH\:mm\:ss}][%c]%m%n
6、编写UserMapperDao 接口
package com.wlc.dao; import com.wlc.po.UserInfo; /**
* @author 王立朝
* @version 1.0
* @description com.wlc.dao
* @date 2019/1/25
**/
public interface UserMapperDao {
//根据用户id查看用户信息
UserInfo findUserById(Integer integer);
}
7、编写UserMapperDaoImpl.java
package com.wlc.dao.impl; import com.wlc.dao.UserMapperDao;
import com.wlc.po.UserInfo;
import org.apache.ibatis.session.SqlSession;
import org.apache.ibatis.session.SqlSessionFactory;
import org.mybatis.spring.support.SqlSessionDaoSupport; /**
* @author 王立朝
* @version 1.0
* @description com.wlc.dao.impl
* @date 2019/1/25
**/
public class UserMapperDaoImpl extends SqlSessionDaoSupport implements UserMapperDao { @Override
public UserInfo findUserById(Integer integer) {
SqlSession sqlSession = this.getSqlSession();
//sqlSession.selectOne("namespace.Sql方法的id");
UserInfo userInfo = sqlSession.selectOne("test.findUserById");
return userInfo;
}
}
8、编写UserInfo.java 实体类
package com.wlc.po; /**
* @author 王立朝
* @version 1.0
* @description po
* @date 2019/1/16
**/
public class UserInfo {
//用户id
private Integer id;
//用户名
private String userName;
//密码
private String passWord;
//性别
private String sex;
//邮箱
private String email;
//联系方式
private String phone;
//家庭住址
private String address;
//年龄
private Integer age;
//血型
private String bloodType; public UserInfo(Integer id, String userName, String passWord, String sex, String email, String phone, String address, Integer age, String bloodType) {
this.id = id;
this.userName = userName;
this.passWord = passWord;
this.sex = sex;
this.email = email;
this.phone = phone;
this.address = address;
this.age = age;
this.bloodType = bloodType;
} public Integer getId() {
return id;
} public void setId(Integer id) {
this.id = id;
} public String getUserName() {
return userName;
} public void setUserName(String userName) {
this.userName = userName;
} public String getPassWord() {
return passWord;
} public void setPassWord(String passWord) {
this.passWord = passWord;
} public String getSex() {
return sex;
} public void setSex(String sex) {
this.sex = sex;
} public String getEmail() {
return email;
} public void setEmail(String email) {
this.email = email;
} public String getPhone() {
return phone;
} public void setPhone(String phone) {
this.phone = phone;
} public String getAddress() {
return address;
} public void setAddress(String address) {
this.address = address;
} public Integer getAge() {
return age;
} public void setAge(Integer age) {
this.age = age;
} public String getBloodType() {
return bloodType;
} public void setBloodType(String bloodType) {
this.bloodType = bloodType;
} public UserInfo() {
} @Override
public String toString() {
return "UserInfo{" +
"id=" + id +
", userName='" + userName + '\'' +
", passWord='" + passWord + '\'' +
", sex='" + sex + '\'' +
", email='" + email + '\'' +
", phone='" + phone + '\'' +
", address='" + address + '\'' +
", age=" + age +
", bloodType='" + bloodType + '\'' +
'}';
}
}
9、编写测试类
UserMapperTest.java
package com.wlc.test; import com.wlc.dao.UserMapperDao;
import com.wlc.po.UserInfo;
import org.junit.Before;
import org.junit.Test;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext; /**
* @author 王立朝
* @version 1.0
* @description com.wlc.test
* @date 2019/1/25
**/ public class UserMapperTest {
private ApplicationContext applicationContext; @Before
//@Before :执行单元测试方法之前会先执行下面这个方法
public void doBefore() {
applicationContext = new ClassPathXmlApplicationContext("classpath:spring/applicationContext.xml");
System.out.println("可以到达");
} @Test
//测试UserMapper
public void testUserMapper() { UserMapperDao userMapperDao = (UserMapperDao) applicationContext.getBean("userMapperDao");
UserInfo userInfo = userMapperDao.findUserById(2);
System.out.println("用户的信息为:"+"性别:"+userInfo.getUserName()
+"年龄:"+ userInfo.getAge());
} }
结果如下:

使用idea 搭建Spring+mybatis的更多相关文章
- 利用Intellij+MAVEN搭建Spring+Mybatis+MySql+SpringMVC项目详解
http://blog.csdn.net/noaman_wgs/article/details/53893948 利用Intellij+MAVEN搭建Spring+Mybatis+MySql+Spri ...
- 搭建spring+mybatis+struts2环境的配置文件
1.web.xml配置 <?xml version="1.0" encoding="UTF-8"?> <web-app xmlns:xsi=& ...
- web项目环境搭建(3):搭建Spring+MyBatis
spring 4.1.7 + MyBatis 3.3 正式开始配置关键内容,这是硬货 一. 新建spring配置文件,起名为 applicationContext.xml,放在src/main/res ...
- 搭建Spring+mybatis报错
java.lang.ClassCastException: com.sun.proxy.$Proxy12 cannot be cast to com.bdqn.service.impl.UserSer ...
- Spring+Mybatis+Maven+MySql搭建实例
林炳文Evankaka原创作品.转载请注明出处http://blog.csdn.net/evankaka 摘要:本文主要讲了如何使用Maven来搭建Spring+Mybatis+MySql的的搭建实例 ...
- Spring+Mybatis+SpringMVC+Maven+MySql搭建实例
林炳文Evankaka原创作品.转载请注明出处http://blog.csdn.net/evankaka 摘要:本文主要讲了如何使用Maven来搭建Spring+Mybatis+SpringMVC+M ...
- Spring MVC+Spring+Mybatis+MySQL(IDEA)入门框架搭建
目录 Spring MVC+Spring+Mybatis+MySQL(IDEA)入门框架搭建 0.项目准备 1.数据持久层Mybatis+MySQL 1.1 MySQL数据准备 1.2 Mybatis ...
- 【转】Spring+Mybatis+SpringMVC+Maven+MySql搭建实例
林炳文Evankaka原创作品.转载请注明出处http://blog.csdn.net/evankaka 摘要:本文主要讲了如何使用Maven来搭建Spring+Mybatis+SpringMVC+M ...
- 手把手Maven搭建SpringMVC+Spring+MyBatis框架(超级详细版)
手把手Maven搭建SpringMVC+Spring+MyBatis框架(超级详细版) SSM(Spring+SpringMVC+Mybatis),目前较为主流的企业级架构方案.标准的MVC设计模式, ...
随机推荐
- Nginx(一)-- 初体验
1.概念 Nginx ("engine x") 是一个高性能的 HTTP 和反向代理服务器,也是一个 IMAP/POP3/SMTP 服务器. Nginx提供基本http服务,可以作 ...
- m2014-architecture-imgserver->Lighttpd +mod_mem_cache的效果简直太好了
公司的图片服务器一直以来负载都比较高,原因是图片比较分散而且比较小.经常把iowait搞的特别的高.但是只有一台机器也法用squid,经测试squid和apache在同一台机器效果会很糟糕的.因为sq ...
- 今天是学习C#面向过程的最后的一天
今天学习完啦面向过程,可能写法也就是那些,固定不变的,但是程序的写法就是由自己决定······ 今天学习了调用已经存在的方法,就是在.net Framework 中存在的方法,具体今天提到的有这些, ...
- lua中类的实现原理和实践
一.基础概念 Lua 本身是函数式的语言,但借助 metatable (元表)这个强大的工具,Lua 实现操作符重载易如反掌.. 下文将详细的解释在Lua中实现类的原理,涉及到的细节点将拆分出来讲, ...
- Kindeditor放置两个调用readonly错误
开始 需要调用Kindeditor中的readonly的方法,但是一直提示edit is undefined 而editor.readonly(true)又只对第一个对象有效 所以只能换换形式,干脆将 ...
- Android英文文档翻译系列(2)——HandlerThread
public class HandlerThread extends Thread Class Overview Handy class for starting a new threa ...
- TCP异常关闭研究分析
版权声明:本文由谢代斌原创文章,转载请注明出处: 文章原文链接:https://www.qcloud.com/community/article/108 来源:腾云阁 https://www.qclo ...
- select标签的onchange事件
/** @1.onchange事件 ==> select选择事件* @2.obj.options ==> 选择option集合* @3.obj.selectedIndex ==> 选 ...
- windows环境下最简单的nginx + tomcat负载均衡配置示例
后端是两台tomcat服务器,我们简称为node1 和node2,访问地址分别是 http://192.168.1.2:8080 和 http://192.168.1.4:8080 前端使用nginx ...
- 电力项目十七--数据字典首页JS添加和删除表格
知识点:jQuery是一个JavaScript函数库. JS代码: function insertRows(){ //获取表格对象 var tb1 = $("#dictTbl"); ...