目录
0.项目结构
1.导入jar包
2.编写创建数据库业务代码
3.创建实体类
4.配置mybatis配置文件mybatis-config.xml
5.编写mapper sql语句文件
6.编写实体类业务代码
7.测试
0.项目结构
1.导入jar包
2.编写创建数据库业务代码
嵌入式数据库
package com.hmgzs.db;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.Statement;
public class EmbeddedDerbyTester {
public static void main(String[] args) {
String driver = "org.apache.derby.jdbc.EmbeddedDriver";//在derby.jar里面
String dbName="D:/mydb/EmbeddedDB";
String dbURL = "jdbc:derby:" + dbName + ";create=true;territory=zh_CN;user=root;password=root";// create=true表示当数据库不存在时就创建它
try {
Class.forName(driver);
Connection conn = DriverManager.getConnection(dbURL);//启动嵌入式数据库
Statement st = conn.createStatement();
st.execute("create table users (id INT NOT NULL,username VARCHAr(20) NOT NULL,password VARCHAr(20),primary key(id))");//创建foo表
st.executeUpdate("insert into users(id,username,password) values (1,'张三','123456')");//插入一条数据
ResultSet rs = st.executeQuery("select * from users");//读取刚插入的数据
while(rs.next()){
int id = rs.getInt(1);
String name = rs.getString(2);
String pass = rs.getString(3);
System.out.println("id="+id+";name="+name+";pass="+pass);
}
} catch(Exception e){
e.printStackTrace();
}
}
}
网络数据库
package com.hmgzs.db;
import org.apache.derby.drda.NetworkServerControl;
import java.io.PrintWriter;
import java.sql.DriverManager;
public class NetworkServerDerbyTester {
public static void main(String[] args) {
String driver = "org.apache.derby.jdbc.ClientDriver";//在derbyclient.jar里面
String dbName="NetworkDB";
String connectionURL = "jdbc:derby://localhost:1527/" + dbName + ";create=true";
try {
NetworkServerControl derbyServer = new NetworkServerControl();//NetworkServerControl类在derbynet.jar里面
PrintWriter pw = new PrintWriter(System.out);//用系统输出作为Derby数据库的输出
derbyServer.start(pw);//启动Derby服务器
Class.forName(driver);
DriverManager.getConnection(connectionURL);
//do something
derbyServer.shutdown();//关闭Derby服务器
} catch (Exception ex) {
ex.printStackTrace();
}
}
}
3.创建实体类
package com.hmgzs.entity;
public class User {
int id;
String username;
String password;
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
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;
}
@Override
public String toString() {
return "User[id = " + id + ", username = " + username +", password = "+
password + "]";
}
}
4.编写mybatis配置文件
mybatis-config.xml
MyAppSqlConfig.java
package com.hmgzs.config;
import org.apache.ibatis.io.Resources;
import org.apache.ibatis.session.SqlSessionFactory;
import org.apache.ibatis.session.SqlSessionFactoryBuilder;
import java.io.InputStream;
public class MyAppSqlConfig {
private static SqlSessionFactory sqlSessionFactory;
static {
try {
String resource = "com/hmgzs/mybatis/mybatis-config.xml";
InputStream inputStream = Resources.getResourceAsStream(resource);
sqlSessionFactory = new SqlSessionFactoryBuilder().build(inputStream);
}
catch (Exception e) {
e.printStackTrace();
}
}
public static SqlSessionFactory getSqlMapInstance() {
return sqlSessionFactory;
}
}
5.编写mapper sql语句文件
UserMapper.xml
select * from users where id=#{id}
userMapper.java
package com.hmgzs.mapper;
import com.hmgzs.entity.User;
public interface UserMapper {
public User getUserById(Integer id);
}
6.编写实体类业务代码
UserService.java
package com.hmgzs.service;
import com.hmgzs.config.MyAppSqlConfig;
import com.hmgzs.entity.User;
import org.apache.ibatis.session.SqlSession;
import org.apache.ibatis.session.SqlSessionFactory;
public class UserService implements UserServiceImpl {
@Override
public User getUserById(Integer id) {
SqlSessionFactory sqlMapper = MyAppSqlConfig.getSqlMapInstance();
SqlSession session = sqlMapper.openSession();
User user;
try {
String statement = "com.hmgzs.mapper.UserMapper.getUserById";
user = session.selectOne(statement,id);
System.out.println(user);
}
finally {
session.close();
}
return user;
}
}
UserServiceImpl.java
package com.hmgzs.service;
import com.hmgzs.entity.User;
public interface UserServiceImpl {
public User getUserById(Integer id);
}



