首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > Java Web开发 >

mybatis只能进行查找,不能进行删除,插入,更新解决方案

2012-04-06 
mybatis只能进行查找,不能进行删除,插入,更新mybatis只能进行查找,不能进行删除,插入,更新 ,是不是哪里配

mybatis只能进行查找,不能进行删除,插入,更新
mybatis只能进行查找,不能进行删除,插入,更新 ,是不是哪里配置错了? 求各位大神!!~~~
mybatis.xml

XML code
<?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 alias="User" type="mvc.web.controller.User"/></typeAliases>  <environments default="development">    <environment id="development">      <transactionManager type="JDBC"/>      <dataSource type="POOLED">        <property name="driver" value="com.mysql.jdbc.Driver"/>        <property name="url" value="jdbc:mysql://localhost:3306/test"/>        <property name="username" value="root"/>        <property name="password" value="123456"/>      </dataSource>    </environment>  </environments>  <mappers>    <mapper resource="mvc/web/controller/UserMapper.xml"/>  </mappers></configuration>

UserMapper.xml
XML code
<?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="mvc.web.controller.UserMapper">  <cache />          <select id="selectUser" parameterType="String" resultType="User">          select * from u  where name = #{name}        </select>        <delete id="deleteUser" parameterType="User">        delete from u where name = #{name}        </delete> </mapper>


UserMapper.java
Java code
package mvc.web.controller;public interface UserMapper {    User selectUser(String name);    void deleteUser(User user);}

User.java
Java code
package mvc.web.controller;import java.io.Serializable;public class User implements Serializable {    private String id;    private String name;        public User(String id, String name) {        super();        this.id = id;        this.name = name;    }    public String getId() {        return id;    }    public void setId(String id) {        this.id = id;    }    public String getName() {        return name;    }    public void setName(String name) {        this.name = name;    }    }

单元测试 代码
Java code
package mvc.web.controller;import java.io.IOException;import java.io.InputStream;import org.apache.ibatis.io.Resources;import org.apache.ibatis.session.SqlSession;import org.apache.ibatis.session.SqlSessionFactory;import org.apache.ibatis.session.SqlSessionFactoryBuilder;import org.junit.Test;public class Test_Mybatis {    @Test    public void t1(){        String resource = "mvc/web/controller/mybatis.xml";        InputStream inputStream = null;        try {            inputStream = Resources.getResourceAsStream(resource);        } catch (IOException e) {            // TODO Auto-generated catch block            e.printStackTrace();        }        SqlSessionFactory sqlSessionFactory = new SqlSessionFactoryBuilder().build(inputStream);        SqlSession session = sqlSessionFactory.openSession();        try {          UserMapper mapper = session.getMapper(UserMapper.class);          User user = mapper.selectUser("aa");          System.out.println(user.getId());          System.out.println(user.getName());        } finally {          session.close();        }    }    @Test    public void t2(){        String resource = "mvc/web/controller/mybatis.xml";        InputStream inputStream = null;        try {            inputStream = Resources.getResourceAsStream(resource);        } catch (IOException e) {            // TODO Auto-generated catch block            e.printStackTrace();        }        SqlSessionFactory sqlSessionFactory = new SqlSessionFactoryBuilder().build(inputStream);        SqlSession session = sqlSessionFactory.openSession();        try {          UserMapper mapper = session.getMapper(UserMapper.class);          mapper.deleteUser(new User("aa","aa"));                  } finally {          session.close();        }    }} 



[解决办法]
自己的马甲 回答算了,不把分浪费了 。session.close()前需要把事务提交 session.commit();,执行这个才真正提交了~

热点排行