スーパー受注管理システム(mybatis)
20332 ワード
スーパー受注管理システム(mybatis)
準備フェーズ--データベース構築(mysqlベース)テーブル作成コマンド で発生した問題は、sqlコマンドとmysqlコマンドを長時間使用していないため、いくつかの基本的な問題が発生します.
mybatisの入門記録関連jarパケットをインポート後 mybatis主な含むファイルmybatis-config.xml、pojo、およびsqlマッピングファイル. mybatisのコアオブジェクトSqlSessionFactoryBuilder-build()生成SqlSessionFactory---openSession()生成SqlSession コアオブジェクトの有効範囲SqlSessionFactoryBuilder SqlSessionFactoryが作成されると不要になります.SqlSessionFactoryは作成されるとアプリケーションと共生します.SqlSessionはデータベースとのセッションに対応しており、閉じた場合は再生成する必要があります. の2種類の操作データの方式1.関連xmlファイルのid 2をselectで操作する.getMapperでインタフェースを操作する方法(インタフェースのメソッド名はxmlのid名と同じでなければならない) mybatis初歩小結
永続化とは:データに関する操作は永続化です.orm:オブジェクトと関係のマッピング(オブジェクト型データベースが突然思いついた)jdbc:ロードドライバ-接続の確立-sqlのプリコンパイルの実行-sql mybatisの実行:factoryの作成-sqlSessionの生成(つまりデータベースとの接続)-sqlの実行
小規模実戦 sqlコード POJO Mapper Config MyBatisUtil インタフェース
準備フェーズ--データベース構築(mysqlベース)
create table smbms_role(
id bigint(20) not null auto_increment ,
roleCode varchar(15),
roleName varchar(15),
createdBy bigint(15),
creationDate datetime,
modifyBy bigint(20),
modifyDate datetime,
constraint pk_role primary key(id)
)ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8 ;
create table smbms_user(
id bigint(20) not null auto_increment,
userCode varchar(15),
userName varchar(15),
userPassword varchar(15),
gender int(10),
birthday date,
phone varchar(15),
address varchar(40),
userRole bigint(20),
createdBy bigint(20),
creationDate datetime,
modifyBy bigint(20),
modifyDate datetime,
constraint pk_user primary key(id),
constraint fk_role foreign key(userRole) references smbms_role(id)
)ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8 ;
create table smbms_provider(
id bigint(20) not null auto_increment,
proCode varchar(20),
proName varchar(20),
proDesc varchar(50),
proContact varchar(20),
proPhone varchar(20),
proAddress varchar(50),
proFax varchar(20),
createdBy bigint(20),
creationDate datetime,
modifyBy bigint(20),
modifyDate datetime,
constraint pk_ primary key(id)
)ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8 ;
create table smbms_bill(
id bigint(20) not null auto_increment,
billCode varchar(20),
productName varchar(20),
productDesc varchar(50),
productUnit varchar(20),
productCount decimal(20,2),
totalPrice decimal(20,2),
isPayment int(10),
providerId bigint(20),
createdBy bigint(20),
creationDate datetime,
modifyBy bigint(20),
modifyDate datetime,
constraint pk_bill primary key(id),
constraint fk_provider foreign key(providerId) references smbms_provider(id)
)ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8 ;
create table smbms_address(
id bigint(20) not null auto_increment,
contact varchar(15),
addressDesc varchar(50),
postCode varchar(15),
tel varchar(20),
createdBy bigint(20),
creationDate datetime,
modifyBy bigint(20),
modifyDate datetime,
userId bigint(20),
constraint pk_address primary key(id),
constraint fk_user foreign key(userId) references smbms_user(id)
)ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8 ;
1. , 。
: root , , 。
:create database name;
grant all privileges on dbname.* to test@localhost;
revoke
flush privileges;
show grants for username;
mybatisの入門記録
永続化とは:データに関する操作は永続化です.orm:オブジェクトと関係のマッピング(オブジェクト型データベースが突然思いついた)jdbc:ロードドライバ-接続の確立-sqlのプリコンパイルの実行-sql mybatisの実行:factoryの作成-sqlSessionの生成(つまりデータベースとの接続)-sqlの実行
小規模実戦
create table equipment(
id bigint(20) auto_increment primary key,
type varchar(20) not null,
price decimal(20,2),
productDate date
)ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8 ;
insert into equipment(type,price,productDate) values('cdma-1','650.78','2016-1-22');
insert into equipment(type,price,productDate) values('cdma-2','2356.23','2013-1-22');
insert into equipment(type,price,productDate) values('cdma-3','2200.76','2010-1-22');
package equipment;
import java.sql.Date;
public class Equipment {
private Integer id;
private String type;
private Float price;
private Date productDate;
..........
..........
}
package smbms.utils;
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;
public class MyBatisUtil {
private static SqlSessionFactory factory;
static {
try {
InputStream is = Resources.getResourceAsStream("mybatis-config.xml");
factory = new SqlSessionFactoryBuilder().build(is);
} catch (Exception e) {
// TODO: handle exception
e.printStackTrace();
}
}
public static SqlSession createSqlSession() {
return factory.openSession();
}
public static void closeSqlSession(SqlSession sqlSession) {
if(sqlSession!=null)
sqlSession.close();
}
}
package equipment;
import java.util.List;
public interface EquipmentMapper {
public List getEquipmentList();
}