当前位置: 移动技术网 > IT编程>开发语言>Java > Mybatis的入门示例代码

Mybatis的入门示例代码

2019年07月22日  | 移动技术网IT编程  | 我要评论

上海月嫂公司,百家乐正品,炒饭娘

首先新建一个javaweb项目并导入mybatis依赖的jar包,同时mybatis是对数据库的操作所以我们需要在数据库中新建一个表user用来演示。

新建完表之后我们还需要建立相对应的实体类user.java并添加set和get方法:

public class user {
private string username;
private string password;
private int age;
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 int getage() {
return age;
}
public void setage(int age) {
this.age = age;
}
}

在mybatis中我们需要建立一个与实体类相对应的映射文件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,namespace的值习惯上设置成包名+sql映射文件名)
-->
<mapper namespace="com.mybatis.mapping.usermapper">
<!-- 在select标签中编写查询的sql语句,id属性值必须是唯一的
使用parametertype属性指明查询时使用的参数类型,resulttype属性指明查询返回的结果集类型
-->
<!-- 
根据username查询得到一个user对象
-->
<select id="getuser" parametertype="java.lang.string" 
resulttype="com.mybatis.po.user">
select * from user where username=#{username}
</select>
<delete id="deleteuser" parametertype="java.lang.string">
delete from user where username=#{username}
</delete>
</mapper>

最后我们需要在src下新建一个mybatis与数据库连接的配置文件config.xml,并将上面的usermapper.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>
<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="" />
</datasource>
</environment>
</environments>
<mappers>
<!-- 注册usermapper.xml文件,resource为usermapper.xml所在目录-->
<mapper resource="com/mybatis/mapping/usermapper.xml"/>
</mappers>
</configuration>

这里的配置数据库连接信息和hibernate差别不是很大,现在我们新建一个test类来测试一下:

public class test {
public static void main(string[] args) throws ioexception {
//mybatis的配置文件
string resource = "config.xml";
//使用类加载器加载mybatis的配置文件(它也加载关联的映射文件)
inputstream is = test.class.getclassloader().getresourceasstream(resource);
//构建sqlsession的工厂
sqlsessionfactory sessionfactory = new sqlsessionfactorybuilder().build(is);
//打开session
sqlsession session = sessionfactory.opensession();
/**
* 映射sql的标识字符串
*com.mybatis.mapping.usermapper是usermapper.xml文件中mapper标签的namespace属性的值,
* getuser是select标签的id属性值,通过select标签的id属性值就可以找到要执行的sql
*/
string statement = "com.mybatis.mapping.usermapper.getuser";//映射sql的标识字符串
//执行查询返回一个唯一user对象的sql
user user = session.selectone(statement,"username1");
system.out.println(user.getusername());
string statement2="com.mybatis.mapping.usermapper.deleteuser";
session.delete(statement2,user);
}
}

执行selectone方法会返回一个user对象(如果想要查询多条数据可以用selectlist,此方法会返回list<user>的对象),我们在控制台输出user对象的username.执行delete方法可以直接将对象对应的一条数据删除,可以根据数据库中的变化来判断是否执行成功。下面是我的项目的目录,大家可以参考一下:

以上就是mybatis的一个简单示例,当然在usermapper.xml中我们还可以用ognl生成动态sql语句,感兴趣的可以自己研究一下。希望对大家有所帮助

如对本文有疑问,请在下面进行留言讨论,广大热心网友会与你互动!! 点击进行留言回复

相关文章:

验证码:
移动技术网