springmvc+mybatis配置过程及示例
来源:互联网 发布:ubuntu输入法设置中文 编辑:程序博客网 时间:2024/06/03 23:48
最近公司想做一个万能遥控器,可以通过手机APP,远程遥控到万能遥控器,最后由万能遥控器通过红外线发射控制家居设备,如空调,窗帘等
如果要开发这么一个遥控器,不难发现这部分离不开云端的开发。目前公司还没有做后台的人员,而我是做Android开发的,我们公司是小公司,就目前这个项目来看,通过我的评估,招聘相关人员来开发,成本还是挺大的,所以公司是不愿意招聘后台人员的,那怎么办呢?我去做咯,谁叫我是全能的呢,不要笑,我也是做过后台开发的,只是以前是打杂的!
不扯了,回归正题。所有的软件开发的流程,大致如下:
第一:配置
第二:demo
第三:实战
好了,
第一步,配置springmvc+mybatis
1.导入jar,导入springMVC和mybatis相关的所有jar包
2.创建spring配置文件
3.配置数据源
4.创建sqlsessionFactory
5.配置事务
6.配置事务的传播性
7.配置aop
8.配置映射mapper
9.配置自动扫描
相关demo和截图
1.导入jar,导入springMVC和mybatis相关的所有jar包
2.创建spring配置文件
在源码目录下创建beans.xml的spring配置文件和jdbc.properties数据库配置文件
其中,jdbc.properties的配置demo如下:
driverClass=com.mysql.jdbc.Driverurl=jdbc:mysql://127.0.0.1:3306/employeeusername=pscpassword=powerstronic
3.配置数据源
在beans.xml文件下,添加数据源
<!-- 将属性资源文件加载到Spring的上下文中 --> <bean class="org.springframework.beans.factory.config.PreferencesPlaceholderConfigurer"> <property name="locations"> <list> <value>classpath:jdbc.properties</value> </list> </property> </bean> <!-- 配置数据源 --> <bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource"> <property name="driverClassName" value="${driverClass}"/> <property name="url" value="${url}"/> <property name="username" value="${username}"/> <property name="password" value="${password}"/> </bean>
4.创建sqlsessionFactory
<bean id="sqlSessionFactoryBean" class="org.mybatis.spring.SqlSessionFactoryBean"> <!-- 指定数据源 --> <property name="dataSource" ref="dataSource"/> <!-- 指定mybatis的配置文件 --> <property name="configLocation" value="classpath:MyBatis-config.xml"/> </bean>
其中,MyBatis-config.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> <typeAliases> <typeAlias type="com.psc.mrkong.user.User" alias="user"/> </typeAliases> <mappers> <mapper resource="com/psc/mrkong/mapper/User.xml"/> </mappers></configuration>
5.配置事务
<!-- 配置事务 --> <bean id="transactionManager" class="org.springframework.jdbc.datasource.DataSourceTransactionManager"> <property name="dataSource" ref="dataSource"/> </bean>
6.配置事务的传播性
<!-- 指定事务的传播特性 --> <tx:advice id="txAdvice" transaction-manager="transactionManager"> <tx:attributes> <tx:method name="find*" read-only="true"/> <tx:method name="get*" read-only="true"/> <tx:method name="query*" read-only="true"/> <tx:method name="add*" propagation="REQUIRED"/> <tx:method name="put*" propagation="REQUIRED"/> <tx:method name="update*" propagation="REQUIRED"/> <tx:method name="change*" propagation="REQUIRED"/> <tx:method name="del*" propagation="REQUIRED"/> </tx:attributes> </tx:advice>
7.配置aop
<!-- 配置aop --> <aop:config> <aop:pointcut expression="execution(* com.psc.mrkong.service..*.*(..))" id="pointcut"/> <aop:advisor advice-ref="txAdvice" pointcut-ref="pointcut"/> </aop:config>
8.配置映射mapper
<bean class="org.mybatis.spring.mapper.MapperScannerConfigurer"> <property name="basePackage" value="com.psc.mrkong.mapper"></property> </bean>
9.配置自动扫描,在beans.xml下第一行子节点下,添加如下配置
OK,到这里,我们已经把springMVC和mybatis的基本配置配置完成,接下来我们写一个测试demo,也就是
第二,demo
1.完成最基本的测试,创建一个包含main函数的类,用来测试获取sqlSessionFactoryBean对象,然后打印出来,运行效果,可以正常把sqlSessionFactory对象打印出来
demo如下:
package com.psc.test;import org.apache.ibatis.session.SqlSessionFactory;import org.mybatis.spring.SqlSessionFactoryBean;import org.springframework.context.ApplicationContext;import org.springframework.context.support.ClassPathXmlApplicationContext;import com.psc.mrkong.service.UserService;public class MainTest { public static void main(String[] args) { ApplicationContext context = new ClassPathXmlApplicationContext("beans.xml"); SqlSessionFactory sqlSessionFactory=(SqlSessionFactory) context.getBean("sqlSessionFactoryBean"); System.out.println(sqlSessionFactory); }}
2.测试完成数据库的连接和插入一条记录
- 创建User的bean类
package com.psc.mrkong.po;public class User { private int sid; private String ename; private int eage; public String getEname() { return ename; } public void setEname(String ename) { this.ename = ename; } public int getEage() { return eage; } public void setEage(int eage) { this.eage = eage; } public int getSid() { return sid; } public void setSid(int sid) { this.sid = sid; }}
- 创建mapper接口UserMapper
package com.psc.mrkong.mapper;import com.psc.mrkong.po.User;public interface UserMapper { int addUser(User user);}
- 创建mapper的sql映射配置文件User.xml,实现sql插入记录功能
<?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="com.psc.mrkong.mapper.UserMapper"> <insert id="addUser" parameterType="user"> insert into emp ( ename,age) values ( #{ename},#{eage}) </insert></mapper>
- 创建service接口和实现类
service接口UserService
package com.psc.mrkong.service;import com.psc.mrkong.po.User;public interface UserService { boolean addUser(User user);}
service接口实现类
package com.psc.mrkong.service.impl;import javax.annotation.Resource;import org.springframework.stereotype.Service;import com.psc.mrkong.mapper.UserMapper;import com.psc.mrkong.po.User;import com.psc.mrkong.service.UserService;public class UserServiceImpl implements UserService{ UserMapper userMapper; @Override public boolean addUser(User user) { int add = userMapper.addUser(user); return add>0; }}
- 注解获取mapper接口及其实现
package com.psc.mrkong.service.impl;import javax.annotation.Resource;import org.springframework.stereotype.Service;import com.psc.mrkong.mapper.UserMapper;import com.psc.mrkong.po.User;import com.psc.mrkong.service.UserService;//注解注册service@Servicepublic class UserServiceImpl implements UserService{ //注解获取mapper实现 @Resource(name="userMapper") UserMapper userMapper; @Override public boolean addUser(User user) { int add = userMapper.addUser(user); return add>0; }}
- main函数测试demo
package com.psc.test;import org.apache.ibatis.session.SqlSessionFactory;import org.mybatis.spring.SqlSessionFactoryBean;import org.springframework.context.ApplicationContext;import org.springframework.context.support.ClassPathXmlApplicationContext;import com.psc.mrkong.service.UserService;public class MainTest { public static void main(String[] args) { ApplicationContext context = new ClassPathXmlApplicationContext("beans.xml"); UserService userService=(UserService) context.getBean("userServiceImpl"); User user=new User(); user.setEname("大亨"); user.setEage(30); System.out.println(userService.addUser(user)); }}
运行效果:成功添加一条记录到数据库中
第三,实战
其实,实战就是对springMVC+mybatis,对数据库进行增删改查的操作,基本参考第二步来实现
点击下载
- springmvc+mybatis配置过程及示例
- SpringMVC 配置过程及详解
- SpringMVC 配置过程及详解
- SpringMVC+myBatis简单示例
- springMVC 配置过程,及问题处理
- MyBatis示例---存储过程
- springmvc(基础二) Springmvc 配置过程及详解
- springmvc+mybatis 整合 完整示例
- SSM Spring +SpringMVC+Mybatis 配置 及pom.xml
- mybatis + springMVC 多数据源,及事务配置
- springMVC+mybatis配置详解
- springMVC + mybatis 事务配置
- springmvc+mybatis+velocity配置
- springMVC +mybatis的配置
- spring,springmvc,mybatis配置
- springmvc+mybatis 数据库配置
- spring+springMVC+Mybatis配置
- springmvc+mybatis 配置
- 深入理解JavaScript编程中的同步与异步机制
- for each
- 《HTML之表单》
- 运算符之:3、关系运算符(6个)
- 笔试整理 六
- springmvc+mybatis配置过程及示例
- 多线程学习记录2
- 234-Palindrome Linked List
- 决策树:ID3算法
- Struts2基础01:编写第一个HelloStruts2程序
- SpringMVC(二)
- 线程池是什么?线程池的作用?
- 运算符之:4、逻辑运算符(6个)
- crontab 无法重启tomcat的问题