Rhythmk 一步一步学 JAVA(11)Ibatis 环境配置
1.项目文件分布。
2、example1.java:
- package com.rhythmk.example1;
- import java.io.IOException;
- import java.io.Reader;
- import java.sql.SQLException;
- import java.util.List;
- import com.ibatis.common.resources.Resources;
- import com.ibatis.sqlmap.client.SqlMapClient;
- import com.ibatis.sqlmap.client.SqlMapClientBuilder;
- public class example1 {
- private static String resource = "com\\rhythmk\\example1\\SqlMapConfig.xml";
- private static SqlMapClient sqlMapClient = null;
- static {
- System.out.println(System.getProperty("user.dir"));
- try {
- Reader reader = Resources.getResourceAsReader(resource);
- sqlMapClient = SqlMapClientBuilder.buildSqlMapClient(reader);
- reader.close();
- } catch (IOException e) {
- e.printStackTrace();
- }
- }
- public static void main(String[] args) {
- // TODO Auto-generated method stub
- GetAllUser();
- GetUserById(1);
- }
- /*
- * 根据ID 获取User
- */
- public static void GetUserById(Integer id) {
- User user = null;
- try {
- sqlMapClient.startTransaction();
- user = (User) sqlMapClient.queryForObject("selectById",
- new Integer("1"));
- System.out.println(user.getName());
- sqlMapClient.commitTransaction();
- } catch (Exception e) {
- e.printStackTrace();
- }
- }
- public static void GetAllUser() {
- List<User> list = null;
- try {
- list = (List<User>) sqlMapClient.queryForList("selectAll");
- for (User user : list) {
- System.out.println(user.getId() + "," + user.getName());
- }
- } catch (Exception e) {
- e.printStackTrace();
- }
- }
- }
3、User.java:
- package com.rhythmk.example1;
- public class User {
- public int getId() {
- return Id;
- }
- public void setId(int id) {
- Id = id;
- }
- public String getName() {
- return name;
- }
- public void setName(String name) {
- this.name = name;
- }
- public int getAge() {
- return Age;
- }
- public void setAge(int age) {
- Age = age;
- }
- private int Id;
- private String name;
- private int Age;
- }
4、SqlMap.properties:
- driver=com.mysql.jdbc.Driver
- url=jdbc:mysql://localhost:3306/test
- username=root
- password=rhythmk
5、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="com\rhythmk\example1\SqlMap.properties" />
- <transactionManager type="JDBC"><!-- type:定义了ibatis的事务管理器有3种,JDBC、JTA、EXTERNAL -->
- <dataSource type="SIMPLE"><!-- type属性指定了数据源的连接类型有3种,SIMPLE、DBCP、JNDI -->
- <property value="${driver}" name="JDBC.Driver" />
- <property value="${url}" name="JDBC.ConnectionURL" />
- <property value="${username}" name="JDBC.Username" />
- <property value="${password}" name="JDBC.Password" />
- </dataSource>
- </transactionManager>
- <!-- 实体类和数据库表的映射 -->
- <sqlMap resource="com\rhythmk\example1\User.xml" />
- </sqlMapConfig>
6.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.rhythmk.example1.User" />
- <!-- 查询所有记录 -->
- <select resultClass="User" id="selectAll">
- SELECT id, name ,age from `user`
- </select>
- <!-- 精确查询 按照条件查询记录 按照部门编号DEPTNO查询 -->
- <select parameterClass="int" resultClass="User" id="selectById">
- SELECT id, name ,age from `user` where id=#id#
- </select>
- </sqlMap>
SQL:
- CREATE TABLE `user` (
- `Id` int(11) NOT NULL,
- `Name` varchar(32) CHARACTER SET utf8 NOT NULL,
- `Age` int(11) NOT NULL
- ) ENGINE=InnoDB DEFAULT CHARSET=latin1;
http://files.cnblogs.com/rhythmK/IbatisExample.rar
Rhythmk 一步一步学 JAVA(11)Ibatis 环境配置的更多相关文章
- 从零开始学 Java - Spring 集成 ActiveMQ 配置(一)
你家小区下面有没有快递柜 近两年来,我们收取快递的方式好像变了,变得我们其实并不需要见到快递小哥也能拿到自己的快递了.对,我说的就是类似快递柜.菜鸟驿站这类的代收点的出现,把我们原来快递小哥必须拿着快 ...
- 从零开始学 Java - Spring 集成 ActiveMQ 配置(二)
从上一篇开始说起 上一篇从零开始学 Java - Spring 集成 ActiveMQ 配置(一)文章中讲了我关于消息队列的思考过程,现在这一篇会讲到 ActivMQ 与 Spring 框架的整合配置 ...
- JAVA EE 运行环境配置(包含JAVA SE)
JAVA EE 运行环境配置(包含JAVA SE) 1.下载并安装jre-7u7-windows-i586.exe (最新的JAVA运行环境) 2.下载并安装java_ee_sdk-6u4-jdk7- ...
- WIN7系统JavaEE(java+tomcat7+Eclipse)环境配置
https://jingyan.baidu.com/article/3a2f7c2e62d25e26afd611fa.html WIN7系统JavaEE(java+tomcat7+Eclipse)环境 ...
- Selenium2学习-001-Selenium2 WebUI自动化Java开发 Windows 环境配置
此文主要介绍 Selenium2 WebUI自动化Java开发 Windows 环境配置,供各位亲们参考,若有不足之处,敬请各位大神指正,非常感谢! 所需软件列表如下所示: 所属分类 具体名称 备注 ...
- java web开发环境配置系列(二)安装tomcat
在今天,读书有时是件“麻烦”事.它需要你付出时间,付出精力,还要付出一份心境.--仅以<java web开发环境配置系列>来祭奠那逝去的…… 1.下载tomcat压缩包,进入官网http: ...
- java web开发环境配置系列(一)安装JDK
在今天,读书有时是件“麻烦”事.它需要你付出时间,付出精力,还要付出一份心境.--仅以<java web开发环境配置系列>来祭奠那逝去的…… 1.下载JDK文件(http://www.or ...
- Java安装和环境配置
Java安装和环境配置 从事Java开发第一关就是安装JAVA环境. 我们要安装JDK, 全称Java开发全套. 其中包含了JRE(运行时环境), 如果你打游戏的时候可能会提示你缺少JRE. 我们要做 ...
- Sublime Text3 for Java 编译运行环境配置 入门详解 - 精简归纳
Sublime Text3 for Java 编译运行环境配置 入门详解 - 精简归纳 JERRY_Z. ~ 2020 / 9 / 24 转载请注明出处!️ 目录 Sublime Text3 for ...
- java10.0.2和java 11.0.1配置环境变量
java10.0.2 在网上找了各种方法一直也没配好打开jak下的lib文件夹发现并没有tools.jar,后经查询jdk-9后就没有了上述.jar文件所以我的配置方法如下 ClASSPATH C:\ ...
随机推荐
- Chrome调试javacript禁止缓存
/********************************************************************* * Chrome调试javacript禁止缓存 * 说明: ...
- Qt 5.8 移植编译、测试
/****************************************************************************** * Qt 5.8 移植编译.测试 * 说 ...
- 【解题报告】13级个人结业赛(二) ——动(dou)态(bu)规(hui)划(zuo)专场
额.果然是动(dou)态(bu)规(hui)划(zuo)专场... A: 翻倍序列 dp[i][j]表示第i个位置是j的情况的个数那么dp[i][j]=∑dp[i-1][k] (j%k==0)初始 ...
- Uva12230Crossing Rivers (数学期望)
问题: You live in a village but work in another village. You decided to follow the straight path betwe ...
- Codeforces1070 2018-2019 ICPC, NEERC, Southern Subregional Contest (Online Mirror, ACM-ICPC Rules, Teams Preferred)总结
第一次打ACM比赛,和yyf两个人一起搞事情 感觉被两个学长队暴打的好惨啊 然后我一直做傻子题,yyf一直在切神仙题 然后放一波题解(部分) A. Find a Number LINK 题目大意 给你 ...
- BZOJ4689 Find the Outlier 【高斯消元】*
BZOJ4689 Find the Outlier Description Abacus教授刚刚完成了一个制作数表的计算引擎的设计.它被设计用于同时计算一个多项式在许多点的取值.例如对于多项式 f(x ...
- Flask第二篇——服务器相关
web服务器.应用服务器和web应用框架 web服务器:负责处理http请求.响应静态文件,常见的有Apache,Nginx以及微软的IIS 应用服务器:负责处理逻辑的服务器.比如php.python ...
- 接口测试框架——第三篇:发送(requests)
把下面的代码放在requests_module.py文件中 # coding: utf-8 import requests import logging from requests.exception ...
- CH0805 防线(秦腾与教学评估)
题意 lsp 学习数学竞赛的时候受尽了同仁们的鄙视,终于有一天......受尽屈辱的 lsp 黑化成为了黑暗英雄Lord lsp.就如同中二漫画的情节一样,Lord lsp 打算毁掉这个世界.数学竞赛 ...
- (转)如何获得当前ListVIew包括下拉的所有数据?
ListView listView = activity.getListView();获取的仅仅是当前屏幕显示的list,但是具有下拉信息,不在当前屏幕,但是下拉显示的数据无法或得到.谁知道如何获得当 ...