- 浏览: 142532 次
- 性别:
- 来自: 合肥
文章分类
最新评论
-
hzyhush:
Java模拟登录新浪微博 -
meaemz:
大神,这是完整的代码吗?怎么没有没有main(),我要怎么调用 ...
Java模拟登录新浪微博 -
meaemz:
大神,这是完整的代码吗?怎么没有没有main(),是要自己写一 ...
Java模拟登录新浪微博 -
c_he_n:
最后执行结果怎么获取到url
Java模拟登录新浪微博 -
hvang1988:
18.JEgg Java多线程开发包 ,这个到底怎么样哦,资料 ...
Java 常用的第三方组件
1、最近几天在学习ibatis和spring,就把两者综合起来,写了示例。
2、构建数据库表user,使用数据库是mysql;
2、根据数据库表生成相应的JavaBean
3、对应JavaBean的配置文件User.xml文件:
4、ibatis和spring的配置文件
ibatis的配置sqlMapConfig.xml文件:
spring的配置applicationContext.xml文件:
5、编写相应的类
UserDao.java
IUserDao.java
TestIUserDao.java
6、项目的包结构
7、程序结构如下:
2、构建数据库表user,使用数据库是mysql;
create table user( id int(10) not null auto_increment, userName varchar(20) , passWord varchar(20), primary key(id) ); insert into user(userName,passWord) values('admin1','admin1'); insert into user(userName,passWord) values('admin2','admin2'); insert into user(userName,passWord) values('admin3','admin3'); insert into user(userName,passWord) values('admin4','admin4');
2、根据数据库表生成相应的JavaBean
package com.tonyj.bean; /** * @author tonyJ * @date 2012-3-17 下午01:00:25 */ public class User { private int id; private String userName; private String passWord; //相应的getter和setter方法,构造方法 }
3、对应JavaBean的配置文件User.xml文件:
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE sqlMap PUBLIC "-//ibatis.apache.org//DTD SQL MAP 2.0//EN" "http://ibatis.apache.org/dtd/sql-map-2.dtd"> <sqlMap> <typeAlias alias="User" type="com.tonyj.bean.User"/> <resultMap class="User" id="userResultMap"> <result property="id" column="id"/> <result property="userName" column="userName"/> <result property="passWord" column="passWord"/> </resultMap> <!-- 获得全查询列表 --> <select id="getAllUsers" resultMap="userResultMap"> select * from user </select> <!-- 根据用户名查询用户对象 --> <select id="getUserByName" resultMap="userResultMap" parameterClass="String"> select * from user where userName=#value# </select> <!-- 根据用户id查询用户对象 --> <select id="getUserById" resultMap="userResultMap" parameterClass="Integer"> select * from user where id=#value# </select> <!--新增用户对象 --> <insert id="insertUser" parameterClass="User"> insert into user(userName,passWord) values(#userName#,#passWord#) </insert> <!-- 删除用户对象 --> <delete id="deleteUser" parameterClass="Integer"> delete from users where id=#id# </delete> <!-- 更新用户对象 --> <update id="updateUser" parameterClass="User"> update user set userName=#userName#,passWord=#passWord# where id=#id# </update> </sqlMap>
4、ibatis和spring的配置文件
ibatis的配置sqlMapConfig.xml文件:
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE sqlMapConfig PUBLIC "-//ibatis.apache.org//DTD SQL Map Config 2.0//EN" "http://ibatis.apache.org/dtd/sql-map-config-2.dtd"> <sqlMapConfig> <sqlMap resource="User.xml"/> </sqlMapConfig>
spring的配置applicationContext.xml文件:
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE beans PUBLIC "-//SPRING/DTD BEAN/EN" "http://www.springframework.org/dtd/spring-beans.dtd"> <beans> <bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource"> <property name="driverClassName"> <value>com.mysql.jdbc.Driver</value> </property> <property name="username"> <value>root</value> </property> <property name="password"> <value>sa</value> </property> <property name="url"> <value>jdbc:mysql://localhost:3306/vin</value> </property> </bean> <bean id="sqlMapClient" class="org.springframework.orm.ibatis.SqlMapClientFactoryBean"> <!-- 此处应注入ibatis配置文件,而非sqlMap文件,否则会出现“there is no statement.....异常” --> <property name="configLocation" value="SqlMapConfig.xml"/> </bean> <bean id="IUserDao" class="com.tonyj.dao.impl.IUserDao"> <property name="dataSource"> <ref bean="dataSource"/> </property> <property name="sqlMapClient"> <ref bean="sqlMapClient"/> </property> </bean> </beans>
5、编写相应的类
UserDao.java
package com.tonyj.dao; import java.util.List; import com.tonyj.bean.User; /** * @author tonyJ * @date 2012-3-17 下午12:59:22 */ public interface UserDao { public List<User> getUserList(); public User getUserByName(String userName); public User getUserById(int id); public void saveUser(User user); public int updateUser(User user); public int deleteUser(int id); }
IUserDao.java
package com.tonyj.dao.impl; import java.util.List; import org.springframework.orm.ibatis.support.SqlMapClientDaoSupport; import com.tonyj.bean.User; import com.tonyj.dao.UserDao; /** * @author tonyJ * @date 2012-3-17 下午01:04:23 */ public class IUserDao extends SqlMapClientDaoSupport implements UserDao{ @SuppressWarnings("unchecked") @Override public List<User> getUserList() { return getSqlMapClientTemplate().queryForList("getAllUsers"); } @Override public User getUserByName(String userName) { return (User) getSqlMapClientTemplate().queryForObject("getUserByName", userName); } @Override public User getUserById(int id) { return (User) getSqlMapClientTemplate().queryForObject("getUserById", id); } @Override public void saveUser(User user) { getSqlMapClientTemplate().insert("insertUser", user); } @Override public int updateUser(User user) { return getSqlMapClientTemplate().update("updateUser",user); } @Override public int deleteUser(int id) { return getSqlMapClientTemplate().delete("deleteUser", id); } }
TestIUserDao.java
package com.tonyj.test; import java.util.ArrayList; import java.util.Iterator; import java.util.List; import org.springframework.context.ApplicationContext; import org.springframework.context.support.ClassPathXmlApplicationContext; import com.tonyj.bean.User; import com.tonyj.dao.impl.IUserDao; /** * @author tonyJ * @date 2012-3-17 下午01:37:19 */ public class TestIUserDao { public static void main(String[] args) { ApplicationContext act=new ClassPathXmlApplicationContext("applicationContext.xml"); IUserDao iud=(IUserDao) act.getBean("IUserDao"); //1、取得所有的对象 List<User> allUsers=new ArrayList<User>(); allUsers=iud.getUserList(); for(Iterator<User> iter=allUsers.iterator();iter.hasNext();){ User users=iter.next(); System.out.println(users.getId()+"-->"+users.getUserName()+"-->"+users.getPassWord()); } //2、根据用户名查询 User getUserByName=new User(); getUserByName=iud.getUserByName("admin1"); System.out.println("根据用户名查询->"+getUserByName.getId()+"-->"+getUserByName.getPassWord()); //3、根据用户id查询 User getUserById=new User(); getUserById=iud.getUserById(1); System.out.println("根据用户id查询"+getUserById.getUserName()+"-->"+getUserById.getPassWord()); } }
6、项目的包结构
7、程序结构如下:
2012-3-20 19:49:08 org.springframework.context.support.AbstractApplicationContext prepareRefresh 信息: Refreshing org.springframework.context.support.ClassPathXmlApplicationContext@4b4333: display name [org.springframework.context.support.ClassPathXmlApplicationContext@4b4333]; startup date [Tue Mar 20 19:49:08 CST 2012]; root of context hierarchy 2012-3-20 19:49:09 org.springframework.beans.factory.xml.XmlBeanDefinitionReader loadBeanDefinitions 信息: Loading XML bean definitions from class path resource [applicationContext.xml] 2012-3-20 19:49:09 org.springframework.context.support.AbstractApplicationContext obtainFreshBeanFactory 信息: Bean factory for application context [org.springframework.context.support.ClassPathXmlApplicationContext@4b4333]: org.springframework.beans.factory.support.DefaultListableBeanFactory@1632c2d 2012-3-20 19:49:09 org.springframework.beans.factory.support.DefaultListableBeanFactory preInstantiateSingletons 信息: Pre-instantiating singletons in org.springframework.beans.factory.support.DefaultListableBeanFactory@1632c2d: defining beans [dataSource,sqlMapClient,IUserDao]; root of factory hierarchy 1-->admin1-->admin1 2-->admin2-->admin2 3-->admin3-->admin3 4-->admin4-->admin4 根据用户名查询->1-->admin1 根据用户id查询admin1-->admin1
发表评论
-
项目操作日志记录(方法级别)
2019-06-12 16:45 936在项目中要记录操作日志,可以通过spring的Aop技术去实现 ... -
spring mybatis多数据源切换(2)
2019-06-12 16:35 420在上一篇文章中写到,多数据源的切换是使用Java代码调用的,现 ... -
spring mybatis多数据源切换(1)
2019-06-05 23:00 404项目中既要连接mysql数据库又要连接sever sql数据库 ... -
Spring定时器的功能开发
2016-12-05 16:59 21631、使用quartz.jar包实现定时器功能,首先在项目中引入 ... -
Maven多模块SSM框架搭建
2016-12-05 15:07 1548整合SSM和Maven多模块,搭建一个简单的开发架构,具体的做 ... -
Hibernate缓存机制分析
2015-04-09 23:18 648复制代码 您可以通过点击 右下角 的按钮 来对文章内容作出评价 ... -
Spring管理事务的几种方式
2015-04-09 22:33 960把Hibernate用到的数据源Datasource,Hibe ... -
Hibernate注解说明
2015-04-03 18:03 800/** * * @author liuguang ... -
struts2请求过程源码分析
2015-02-04 21:08 625struts2请求过程源码分析 这篇文章写的很好 分析很透彻 ... -
spring和mybatis泛型接口的整合(一)
2015-02-03 20:42 203891、这次使用spring和mybatis进行整合,使用spri ... -
spring开发所需jar包
2012-03-14 09:17 1105spring2.5开发所需的jar包,上传到这里,方便下载使用 ... -
ibatis自动生成主键
2012-03-13 10:53 1050很多数据库支持自动生成主键的数据类型如(mysql)。不 ... -
ibatis入门教程
2012-03-12 20:41 183941、本文通过几个简单的示例,实现ibatis的增删改查的功能。 ... -
ibatis一对多示例
2012-03-12 15:20 15401、在实际开发中,iBATIS框架已经很普遍的使用,然而我们常 ... -
hibernate入门示例展示
2011-06-30 17:00 1232有很长一段时间没有使用hibernate进行开发了,最近闲来无 ...
相关推荐
Spring与iBATIS的集成示例代码,希望对初学者有用
struts2+spring+ibatis 项目 入门使用 CRUD
一个简单的struts+spring+ibatis示例的源码,在源码中包含一个简单的分布功能
很好的spring+ibatis事务的配置文档.
JSF+Spring+Ibatis示例,对学习JAVA企业应用开发有巨大的帮助!
在此摘录中,两位作者将和你一起安装iBATIS并将其集成进你的Spring应用中。他们也阐明了怎样取得你已编写的SQL语句及把他们映射给iBATIS使用的Bean。最后,还讨论了iBATIS的优缺点,及为什么是这样的一种方式,即...
spring+ibatis eclipse工程示例
Struts2 Spring Hibernate IBatis Struts2 Spring Hibernate IBatisStruts2 Spring Hibernate IBatisStruts2 Spring Hibernate IBatis 只需要导入相应的jar包就行了 ,数据库是mysql :数据库名叫做mydatabase,表名...
有关Struts2+Spring+Hibernate和Struts2+Spring+Ibatis的整合实例demo 原创,完全基于eclipse开发
struts+spring+ibatis的Demo struts+spring+ibatis的Demo struts+spring+ibatis的Demo
Spring对IBatis的整合 10.3 Spring对IBatis的支持 ...这些辅助类位于org.springframework.orm.ibatis包下,目前Spring可同时支持IBatis1.3.x和2.0。 此外,针对IBatis,Spring也提供了和JdbcTemplate一致的异常处理方式
是不是好东西你们去鉴定,SpringMVC + Spring + ibatis 可以配置多数据源,这个Demo 扩展性极强,就看你们自己如何发挥。
spring ibatis整合所需jar包
struts + spring + ibatis 示例
SPRING与IBATIS整合采用保留IBATIS事务,可自己控制回滚!
struts+spring+ibatis做的一个增删改查例子
iBatis和Spring整合 iBatis和Spring整合
Spring+Ibatis技术:很好的架构文档
struts2+spring+ibatis+oracle+分页搜索+上传附件实例!完整版!