初学ibatis,实现了一个增删改查的例子:
database.properties:
driverClassName=com.mysql.jdbc.Driver
url=jdbc\:mysql\://localhost\:3306/test
username=root
password=root
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>
<properties resource="database.properties"/>
<transactionManager type="JDBC">
<dataSource type="SIMPLE">
<property name="JDBC.Driver" value="${driverClassName}"/>
<property name="JDBC.ConnectionURL" value="${url}"/>
<property name="JDBC.Username" value="${username}"/>
<property name="JDBC.Password" value="${password}"/>
</dataSource>
</transactionManager>
<sqlMap resource="com/cz/model/User.xml" />
</sqlMapConfig>
User.java
package com.cz.model;
public class User {
private int id;
private String name;
private String email;
private int age;
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getEmail() {
return email;
}
public void setEmail(String email) {
this.email = email;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
}
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.cz.model.User" />
<select id="findAll" resultClass="User">
select * from user
</select>
<select id="findUserById" resultClass="User" parameterClass="int">
select * from user where id = #value#
</select>
<insert id="addUser" parameterClass="com.cz.model.User">
insert into user(id,name,age,email) values(#id#,#name#,#age#,#email#)
</insert>
<update id="updateUser" parameterClass="com.cz.model.User">
update user set name = #name# where id=#id#
</update>
<delete id="deleteUser" parameterClass="int">
delete from user where id = #value#
</delete>
</sqlMap>
IUserDao.java
package com.cz.dao;
import java.util.List;
import com.cz.model.User;
public interface IUserDao {
//查询用户集合
public List<User> QueryUserList();
//根据id查询用户
public User QueryUserById(int id);
//添加新用户
public void AddUser(User user);
//修改用户信息
public int UpdateUser(User user);
//删除用户
public void DeleteUserById(int id);
}
UserDaoImpl:
package com.cz.dao;
import java.io.*;
import java.sql.SQLException;
import java.util.List;
import com.cz.model.User;
import com.ibatis.common.resources.Resources;
import com.ibatis.sqlmap.client.SqlMapClient;
import com.ibatis.sqlmap.client.SqlMapClientBuilder;
public class UserDaoImpl implements IUserDao{
private static SqlMapClient sqlMap;
static{
try {
Reader reader = Resources.getResourceAsReader("SqlMapConfig.xml");
sqlMap = SqlMapClientBuilder.buildSqlMapClient(reader);
reader.close();
} catch (IOException e) {
e.printStackTrace();
}
}
//查询用户集合
public List<User> QueryUserList() {
List<User> userList = null;
try {
userList = sqlMap.queryForList("findAll");
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return userList;
}
//根据id查询用户
public User QueryUserById(int id) {
User user=null;
try {
user=(User) sqlMap.queryForObject("findUserById", id);
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return user;
}
//添加新用户
public void AddUser(User user) {
// TODO Auto-generated method stub
try {
sqlMap.insert("addUser", user);
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
//修改用户信息
public int UpdateUser(User user) {
// TODO Auto-generated method stub
int a=0;
try {
a=sqlMap.update("updateUser",user);
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return a;
}
//删除用户
public void DeleteUserById(int id) {
// TODO Auto-generated method stub
try {
sqlMap.delete("deleteUser", id);
} catch (SQLException e) {
e.printStackTrace();
}
}
}
Test.java:
package com.cz.test;
import java.util.List;
import com.cz.dao.IUserDao;
import com.cz.dao.UserDaoImpl;
import com.cz.model.User;
public class Test {
public static void main(String[] args) {
IUserDao userdao=new UserDaoImpl();
//查询用户集合
List<User> userList=userdao.QueryUserList();
for(User user:userList){
System.out.println(user.getId()+" "+user.getName()+" "+user.getAge()+" "+user.getEmail());
}
// //根据id查询用户
// User user=new User();
// user=userdao.QueryUserById(2);
// System.out.println(user.getId()+" "+user.getName()+" "+user.getAge()+" "+user.getEmail());
// //添加新用户
// User user=new User();
// user.setId(3);
// user.setName("张三");
// user.setAge(30);
// user.setEmail("zs@sina.com");
// userdao.AddUser(user);
// //修改用户信息
// User user=new User();
// user.setId(1);
// user.setName("哈哈");
// System.out.println(userdao.UpdateUser(user));
// //删除用户
// userdao.DeleteUserById(1);
}
}
下面上传项目需要的两个包:
- 大小: 8.5 KB
分享到:
相关推荐
在本示例中,"ibatis实现增删改查功能demo"是一个具体的项目,旨在演示如何利用Ibatis进行数据库操作,包括插入(Insert)、删除(Delete)、更新(Update)和查询(Select)数据。以下将详细解析这个项目的重点内容...
【标题】:“最简单的ibatis实现增删改查” 在Java开发中,iBATIS(现更名为MyBatis)是一个非常流行的持久层框架,它允许开发者编写SQL语句并与Java对象进行映射,从而简化了数据库操作。本教程将向您展示如何在...
在这个"ibatis的增删改查"主题中,我们将深入探讨如何在不依赖MVC框架的情况下,利用Ibatis进行数据操作。 1. **Ibatis安装与配置** 首先,你需要将Ibatis的jar包添加到项目的类路径中,或者通过Maven或Gradle等...
在本教程中,我们将深入...在“增删改查(二)”这个主题中,我们将继续学习如何利用Ibatis高效地完成日常的数据库任务。通过实践和理解这些基本操作,你可以更好地掌握Ibatis,并将其应用于实际项目中,提升开发效率。
总之,这个项目提供了一个学习和实践Java Web开发的良好平台,通过Struts1、Spring和iBatis的组合,展示了如何构建一个完整的用户管理应用,包括登录、注册以及对数据的增删改查操作。这样的实践经验有助于开发者...
Ibatis和Spring整合例子,实现增删改查功能.
在这个项目中,开发者利用了Spring 2.5、Struts 2.1和iBatis 2.3这三个组件来实现数据的增删改查功能,并且结合了存储过程来增强数据库操作的灵活性。同时,通过Junit进行单元测试,确保代码的正确性和稳定性。 ...
这个例子是利用这三个框架实现了一个基础的增删改查(CRUD)功能,涵盖了数据库操作、业务逻辑处理以及用户界面交互。 **Struts** 是一个基于MVC(Model-View-Controller)设计模式的Java Web框架,负责处理用户的...
在本教程中,我们将深入探讨Ibatis 3.0框架中的增、删、改、查操作,这是关于Ibatis 3.0系列教程的第三部分。...通过学习这一部分,你应能熟练掌握在Ibatis中进行数据的增删改查操作,并理解其背后的原理和用法。
在本文中,我们将深入探讨如何使用Ibatis实现基本的增删改查操作,这对于初学者来说是非常重要的基础知识。 ### 1. Ibatis 框架简介 Ibatis 最初由Clinton Begin 创建,后来成为Apache软件基金会的一个项目。它的...
总结,Ibatis以其简单易用、灵活高效的特性在Java开发中占据重要地位,其增删改查功能的实现让开发者能更加专注于业务逻辑,而不是繁琐的JDBC操作。对于初学者来说,深入理解Ibatis的CRUD操作及其相关配置,对提升...
以上就是使用 Struts、Spring 和 iBatis 实现增删改查操作的基本流程和关键点。理解这些概念并熟练掌握它们的整合,对于构建高效、可维护的 Java Web 应用至关重要。在实际开发中,还需要考虑安全性、性能优化、代码...
本篇文章将深入探讨如何使用Ibatis框架实现对`student`表的增删改查操作,包括模糊查询以及利用序列自动生成主键。 首先,我们来理解Ibatis的基本概念。Ibatis是由Apache基金会维护的一个开源项目,它是一个SQL映射...
这个"Struts2+Spring2.5+iBatis完整增删改查Demo"提供了一个完整的集成示例,包括所有必要的jar包,使得开发者可以快速在Mycelipse环境中搭建并运行项目。 **Struts2框架**: Struts2是基于MVC设计模式的Web应用...
在实现增删改查操作之前,我们需要准备以下基础: 1. 数据库:创建一个数据库表,用于存储数据。例如,可以创建一个名为`users`的表,包含`id`(主键)、`username`和`password`等字段。 2. Java实体类:根据...
Ibatis 是一款轻量级的Java持久层框架,它提供了SQL映射框架,使得...通过这个项目,你可以了解到Ibatis的核心概念,如何配置和使用它来实现数据库的增删改查操作,以及如何利用其动态SQL的能力来提升代码的灵活性。
在"jsf+ibatis增删改查"项目中,JSF被用来创建用户界面,而iBatis则作为数据访问层,负责与数据库的交互。以下是实现这一功能的关键步骤: 1. **配置iBatis**:首先,需要在项目中引入iBatis的库文件,并配置`...
在增删改查功能中,iBatis通过Mapper接口与XML配置文件配合,实现了数据的CRUD操作。开发者只需要定义接口方法,iBatis会自动生成SQL并执行,返回结果集。 这个项目的文件结构通常会包含以下几个部分: 1. **src/...
下面将详细讲解这三个技术及其在实现增删改查(CRUD)操作中的应用。 首先,Spring MVC 是 Spring 框架的一个模块,主要负责处理 Web 应用的模型-视图-控制器(MVC)结构。它提供了一个分离关注点的方式,使得...
本文将详细介绍Ibatis如何实现简单的增删改查操作,并结合提供的源码进行深入理解。 首先,Ibatis的核心是SQL映射文件和SqlSessionFactory。SQL映射文件是XML格式的,其中包含了SQL语句及其参数映射,是Ibatis执行...