Hello,大家好!今天是我第一次写微博,经验不足,希望大家多多包涵,给我多提提建议或意见。我为大家带来一个用jdbc连接Oracle数据库实现学生管理系统的项目,大家如果有正在做这方面的项目,可以拿来参考。好了,闲话不扯一些,下面进入正题:
一、首先我来给大家屡一下思路:
1.首先需要先导jar包:一共需要两个 一个是ojdbc14.jar,它是用于实现用jdbc连接数据库的。另一个是c3p0-0.9.1.2.jar,它是使用数据库连接池需要导入的一个包。
2.需要建立连接数据库的配置文件,即db.properties
3.建db包:这个包中有两个类,一个是DBHelper,一个是DBManager 这俩都是用来进行数据库连接和管理的。
4.建vo包:这个包里面全是一些实体类,只有get和set方法
5.建mapper包:这是个新名词,以前没见过,感觉好高大上的样子,其实这是一个对查询得到的结果集的一个映射,理解了也就那么回事,每个表对应一个mapper类,具体使用下面代码中会提及。
6.建dao包:这个包中每个类对应一个表,每个类中就是对这个表的增删改查等方法的一个封装。
7.建SuperManagerSystem包:这个是管理员登录界面。
8.之后就是建立StudentManagerSystem包ClazzManagerSystem包...等等一些学生和班级界面的展示了,在这里就不一一介绍了,给你们用图展示出来吧。
9.对了,我这个项目是用jdbc连接Oracle数据库实现学生管理系统的项目,所以Oracle数据库怎能没有表存在呢,以我的项目为例
我将数据库中的三个表:student表、clazz表、supermanager表一一展示给大家:
student表:
-- Create table
create table STUDENT
(
STUID NUMBER not null,
STUNAME VARCHAR2(20),
SEX VARCHAR2(5),
CLAID NUMBER
)
tablespace USERS
pctfree 10
initrans 1
maxtrans 255
storage
(
initial 64
minextents 1
maxextents unlimited
);
-- Create/Recreate primary, unique and foreign key constraints
alter table STUDENT
add primary key (STUID)
using index
tablespace USERS
pctfree 10
initrans 2
maxtrans 255
storage
(
initial 64K
minextents 1
maxextents unlimited
);
alter table STUDENT
add foreign key (CLAID)
references CLAZZ (CLAID);
-- Create table
create table CLAZZ
(
CLAID NUMBER not null,
CLANAME VARCHAR2(20) not null
)
tablespace USERS
pctfree 10
initrans 1
maxtrans 255
storage
(
initial 64
minextents 1
maxextents unlimited
);
-- Create/Recreate primary, unique and foreign key constraints
alter table CLAZZ
add primary key (CLAID)
using index
tablespace USERS
pctfree 10
initrans 2
maxtrans 255
storage
(
initial 64K
minextents 1
maxextents unlimited
);
create table SUPERMANAGER
(
USER0 VARCHAR2(20),
PASSWORD0 VARCHAR2(20)
)
tablespace USERS
pctfree 10
initrans 1
maxtrans 255
storage
(
initial 64
minextents 1
maxextents unlimited
);
二、介绍了这么多,连个效果图都没有,还说什么呀说,有图有真相,下面我们就先来看一下效果图。
1.这是管理员登录界面。
2.这是学生管理界面。
3.这是学生注册界面。
4.这是学生修改界面,当然,学号一般是不允许修改的,可以隐藏学号或者用JLabel展示出来。
5.删除的话,选中要删除的那一行,点击删除就可以删除了。
6.这里是班级管理管理系统,进行班级的增删改查,不过要注意,如果该班级中存在学生,则无法删除该班级,只有全部删除该班级的学生才可以删除这个班级。
7.这是班级添加,添加后会在班级管理管理系统中显示出来。
三、接下来就进入编程阶段:
1.导jar包就不多说一些了,把下载下来的jar包放到WebRoot下的WEB-INF下的lib包中。
2.然后是建立配置文件,选中src右击选择new找到File然后写上你的配置文件名xxx.properties就行了
配置文件主要由4部分组成:
a.驱动字符串: DRIVER = Oracle.jdbc.driver.OracleDriver 每个单词分别代表:要连接的数据库 连接协议 驱动类
b.连接字符串: URL = jdbc:oracle:thin:@localhost:1521:orcl 每个单词分别代表:连接协议 要连接的数据库 连接方式(直连) 要连接ip oracle数据库的端口号 数据库实例
c.用户名: USER = scott 这个登录用户名可以改成自己的
d.密码:PASSWORD = tiger 这个密码也可以改成与登录用户相对应的密码
3.先来看一下数据库连接的第一个类DBHelper。
package com.ruide.db;
import java.util.Properties;
import java.beans.PropertyVetoException;
import java.io.IOException;
import java.io.InputStream;
import com.mchange.v2.c3p0.ComboPooledDataSource;
public class DBHelper {
//声明四个变量都为 public static
public static String DRIVER;
public static String URL;
public static String USER;
public static String PASSWORD;
public static ComboPooledDataSource cpds=null;//声明cpds对象,但没分配内存
//静态块里赋值,静态方法可以用类名直接调用
static{
//获取配置文件信息
//要用到 Properties类
Properties pro=new Properties();
//获取输入流截取配置文件信息
InputStream in=DBHelper.class.getClassLoader()
.getResourceAsStream("db.properties");
try{
//将输入流放在Properties类对象中
pro.load(in);
}catch(IOException e){
e.printStackTrace();
}
//获取信息
DRIVER=pro.getProperty("DRIVER");
URL=pro.getProperty("URL");
USER=pro.getProperty("USER");
PASSWORD=pro.getProperty("PASSWORD");
//注明:千变万化,但是这个类是不变的,只是变配置文件
//数据库连接池 初始化
cpds=new ComboPooledDataSource();//初始化cpds对象,拿来用,分配内存,存在地址
try {
cpds.setDriverClass(DRIVER);
} catch (PropertyVetoException e) {
e.printStackTrace();
}
cpds.setJdbcUrl(URL);
cpds.setUser(USER);
cpds.setPassword(PASSWORD);
cpds.setInitialPoolSize(20);//数据库连接池初始有20个连接
cpds.setAcquireIncrement(5);//连接不足,每次增加5个
cpds.setMaxPoolSize(100);//最多有100个连接
}
}
package com.ruide.vo;
public class Student {
int stuid;
int clazzid;
String stuname;
String stusex;
public int getClazzid(){
return clazzid;
}
public void setClazzid(int clazzid){
this.clazzid=clazzid;
}
public int getStuid() {
return stuid;
}
public void setStuid(int stuid) {
this.stuid = stuid;
}
public String getStuname() {
return stuname;
}
public void setStuname(String stuname) {
this.stuname = stuname;
}
public String getStusex() {
return stusex;
}
public void setStusex(String stusex) {
this.stusex = stusex;
}
public Student(int stuid, String stuname, String stusex,int clazzid) {
super();
this.stuid = stuid;
this.stuname = stuname;
this.stusex = stusex;
this.clazzid=clazzid;
}
public Student() {
super();
}
}
package com.ruide.mapper;
import java.util.List;
import java.sql.ResultSet;
public interface IMapper{
//建一个抽象类,抽象方法,返回值是List集合
List map(ResultSet ret);//映射类:将结果集的一行数据封装成一个vo类对象,把整个结果集封装成一个List集合
}
package com.ruide.mapper;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.List;
import com.ruide.vo.Student;
public class StudentMapper implements IMapper{
public List map(ResultSet ret){
List list=new ArrayList();
//注意:以后使用的类能往上提就往上提,能用接口(因为他的实现方式多)不用具体的类,特别是数据类型
try {
while(ret.next()){
Student d=new Student();
d.setStuid(ret.getInt("STUID"));
d.setStuname(ret.getString("STUNAME"));
d.setStusex(ret.getString("SEX"));
d.setClazzid(ret.getInt("CLAID"));
list.add(d);
}
return list;
}catch (SQLException e){
e.printStackTrace();
}
return null;
}
}
package com.ruide.vo;
public class Clazz {
private int clazzid;
private String clazzname;
public int getClazzid(){
return clazzid;
}
public void setClazzid(int clazzid){
this.clazzid=clazzid;
}
public String getClazzname(){
return clazzname;
}
public void setClazzname(String clazzname){
this.clazzname=clazzname;
}
public Clazz(int clazzid,String clazzname){
super();
this.clazzid=clazzid;
this.clazzname=clazzname;
}
public Clazz(){
super();
}
}
package com.ruide.mapper;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.List;
import com.ruide.vo.Clazz;
public class ClazzMapper implements IMapper {
public List map(ResultSet ret) {
List list=new ArrayList();
try {
while(ret.next()){
Clazz cl=new Clazz();
cl.setClazzid(ret.getInt("CLAID"));
cl.setClazzname(ret.getString("CLANAME"));
list.add(cl);
}
return list;
} catch (SQLException e) {
e.printStackTrace();
}
return null;
}
}
package com.ruide.vo;
public class SuperManager {
private String user;
private String password;
public String getUser() {
return user;
}
public void setUser(String user) {
this.user = user;
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
public SuperManager(String user, String password) {
super();
this.user = user;
this.password = password;
}
public SuperManager() {
super();
}
}
package com.ruide.mapper;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.List;
import com.ruide.vo.SuperManager;
public class SuperManagerMapper implements IMapper {
public List map(ResultSet rst) {
List list=new ArrayList();
//注意:以后使用的类能往上提就往上提,能用接口(因为他的实现方式多)不用具体的类,特别是数据类型
try {
while(rst.next()){
SuperManager d=new SuperManager();
d.setUser(rst.getString("USER0"));
d.setPassword(rst.getString("PASSWORD0"));
list.add(d);
}
} catch (SQLException e) {
e.printStackTrace();
}
return list;
}
}
package com.ruide.db;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.List;
import com.ruide.mapper.IMapper;
public class DBManager {
private Connection getConn() throws SQLException{
return DBHelper.cpds.getConnection();//从连接池获取连接
}
public int executeUpdate(String sql,Object params[]){
Connection conn=null;
PreparedStatement pst=null;
try {
conn=getConn();//设置连接
pst=conn.prepareStatement(sql);//建立通道
if(params != null){
for(int i=0;i
package com.ruide.dao;
import java.util.List;
import com.ruide.db.DBManager;
import com.ruide.mapper.StudentMapper;
import com.ruide.vo.Student;
public class StudentDAO {
public int save(Student s){
String sql="insert into Student values(?,?,?,?) ";
String student = null;
Object params[]={s.getStuid(),s.getStuname(),s.getStusex(),s.getClazzid()};
DBManager db=new DBManager();
int i=db.executeUpdate(sql, params);
if(i>0){
return i;
}else{
return -1;
}
}
public int change(Student s){
String sql="update student set stuname=?,sex=?,claid=? where stuid=?";
DBManager db=new DBManager();
Object params[]={s.getStuname(),s.getStusex(),s.getClazzid(),s.getStuid()};
int i=db.executeUpdate(sql, params);
if(i>0){
return i;
}else{
return -1;
}
}
public List findAll(){
String sql="select * from Student order by stuid";
DBManager db=new DBManager();
StudentMapper mapper=new StudentMapper();
List list=db.executeQuary(sql,mapper,null);
return list;
}
public Student findById(int id){
String sql="select * from Student where stuid=?";
DBManager db=new DBManager();
Object params[]={id};
StudentMapper mapper=new StudentMapper();
List list=db.executeQuary(sql, mapper,params);
if(list.size()!=0){
return list.get(0);
}else{
return null;
}
}
public int delete(int id)throws Exception{
String sql="delete from Student where stuid=?";
DBManager db=new DBManager();
Object params[]={id};
int i=db.executeUpdate(sql, params);
if(i>0){
return i;
}else{
return -1;
}
}
public Student findByName(String name){
String sql="select * from Student where stuname=?";
DBManager db=new DBManager();
StudentMapper mapper=new StudentMapper();
Object params[]={name};
List list=db.executeQuary(sql, mapper, params);
if(list!=null){
return list.get(0);
}else{
return null;
}
}
}
package com.ruide.dao;
import java.util.List;
import com.ruide.db.DBManager;
import com.ruide.mapper.ClazzMapper;
import com.ruide.vo.Clazz;
public class ClazzDAO {
public List findAll(){
String sql="select * from Clazz";
DBManager db=new DBManager();
ClazzMapper mapper=new ClazzMapper();
List list=db.executeQuary(sql, mapper, null);
return list;
}
public Clazz findById(int id){
String sql="select * from Clazz where claid=?";
DBManager db=new DBManager();
ClazzMapper mapper=new ClazzMapper();
Object params[]={id};
List list=db.executeQuary(sql, mapper, params);
if(list.size()>=0){
return list.get(0);
}else{
return null;
}
}
public Clazz findByName(String name){
String sql="select * from Clazz where claname=?";
DBManager db=new DBManager();
ClazzMapper mapper=new ClazzMapper();
Object params[]={name};
List list=db.executeQuary(sql, mapper, params);
if(list.size()!=0){
return list.get(0);
}else{
return null;
}
}
public int delete(int id)throws Exception{
String sql="delete from Clazz where claid=?";
DBManager db=new DBManager();
Object params[]={id};
int i=db.executeUpdate(sql, params);
return i;
}
public int save(Clazz c){
String sql="insert into Clazz values(?,?) ";
Object params[]={c.getClazzid(),c.getClazzname()};
DBManager db=new DBManager();
int i=db.executeUpdate(sql, params);
return i;
}
}
package com.ruide.dao;
import java.util.List;
import com.ruide.db.DBManager;
import com.ruide.mapper.IMapper;
import com.ruide.mapper.SuperManagerMapper;
import com.ruide.vo.SuperManager;
public class SuperManagerDAO {
// public int save(SuperManager s) throws Exception{
// String sql="insert into SuperManager values(?,?,?)";
// Object params[]={s.getUser(),s.getPassword()};
// DBManager db=new DBManager();
// int i=db.executeUpdate(sql, params);
// return i;
// }
// public int delete(int id)throws Exception{
// String sql="delete from SuperManager where password0=?";
// DBManager db=new DBManager();
// Object params[]={id};
// int i=db.executeUpdate(sql, params);
// return i;
// }
// public int change(SuperManager s)throws Exception{
// String sql="update SuperManager set user0=?,password0=? where password0=?";
// DBManager db=new DBManager();
// Object params[]={s.getUser(),s.getPassword()};
// int i=db.executeUpdate(sql, params);
// return i;
// }
//
// public List findAll() throws Exception{
// String sql="select * from SuperManager";
// DBManager db=new DBManager();
// SuperManager mapper=new SuperManager();
// return db.executeQuary(sql, (IMapper) mapper, null);
// }
public SuperManager findByName(String user0,String password0) throws Exception{
String sql="select * from SuperManager where user0=? and password0=?";
DBManager db=new DBManager();
Object params[]={user0,password0};
SuperManagerMapper mapper=new SuperManagerMapper();
List list= db.executeQuary(sql, mapper, params);
if(list.size()==0){
return null;
}
return list.get(0);
}
}
package StudentManagerSystem;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.util.ArrayList;
import java.util.List;
import com.ruide.ClazzManagerSystem.ClazzManager;
import com.ruide.dao.ClazzDAO;
import com.ruide.dao.StudentDAO;
import com.ruide.vo.Clazz;
import com.ruide.vo.Student;
public class StudentTable extends javax.swing.JFrame {
public StudentTable() {
initComponents();
setLocationRelativeTo(null);
}
private void initComponents(){
jScrollPane1 = new javax.swing.JScrollPane();
jTable1 = new javax.swing.JTable();
jButton1 = new javax.swing.JButton();
jButton2 = new javax.swing.JButton();
jButton3 = new javax.swing.JButton();
jButton4 = new javax.swing.JButton();
setResizable(false);//禁止改变窗体大小
setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
StudentDAO st=new StudentDAO();
try {
List list=new ArrayList();
list=st.findAll();
} catch (Exception e) {
e.printStackTrace();
}
StudentDAO stuDAO=new StudentDAO();
List list1=stuDAO.findAll();
Object studen[][]=new Object[list1.size()][];
ClazzDAO clz=new ClazzDAO();
for(int i=0;i
package StudentManagerSystem;
import java.util.List;
import javax.swing.JOptionPane;
import com.ruide.ClazzManagerSystem.ClazzManager;
import com.ruide.dao.ClazzDAO;
import com.ruide.dao.StudentDAO;
import com.ruide.vo.Clazz;
import com.ruide.vo.Student;
public class StudentAdd extends javax.swing.JFrame {
protected Object[] params;
public StudentAdd(){
initComponents();
setLocationRelativeTo(null);
}
private void initComponents() {
jLabel1 = new javax.swing.JLabel();
jTextField1 = new javax.swing.JTextField();
jLabel2 = new javax.swing.JLabel();
jLabel3 = new javax.swing.JLabel();
jLabel4 = new javax.swing.JLabel();
jLabel5 = new javax.swing.JLabel();
jTextField2 = new javax.swing.JTextField();
jComboBox1 = new javax.swing.JComboBox();
jComboBox2 = new javax.swing.JComboBox();
jButton1 = new javax.swing.JButton();
jButton2 = new javax.swing.JButton();
setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
setResizable(false);
jLabel1.setText("\u6b22\u8fce\u6765\u5230\u5b66\u751f\u6ce8\u518c\u754c\u9762\uff01");
jTextField1.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
jTextField1ActionPerformed(evt);
}
});
jLabel2.setText("\u5b66\u751f\u5b66\u53f7\uff1a");
jLabel3.setText("\u5b66\u751f\u59d3\u540d\uff1a");
jLabel4.setText("\u5b66\u751f\u6027\u522b\uff1a");
jLabel5.setText("\u5b66\u751f\u73ed\u7ea7\uff1a");
jComboBox1.setModel(new javax.swing.DefaultComboBoxModel(new String[] {
"男", "女" }));
ClazzDAO dao=new ClazzDAO();
List list=dao.findAll();
String st[]=new String[list.size()];
for(int i=0;i list=dao1.findAll();
// for(int i=0;i list=dao.findAll();
String st[]=new String[list.size()];
for(int i=0;i
package StudentManagerSystem;
import java.util.List;
import com.ruide.dao.ClazzDAO;
import com.ruide.dao.StudentDAO;
import com.ruide.vo.Clazz;
import com.ruide.vo.Student;
public class StudentUpdate extends javax.swing.JFrame {
public StudentUpdate(int id){
initComponents(id);
setLocationRelativeTo(null);
}
private void initComponents(int id){
jLabel1 = new javax.swing.JLabel();
jLabel2 = new javax.swing.JLabel();
jTextField1 = new javax.swing.JTextField();
jLabel3 = new javax.swing.JLabel();
jLabel4 = new javax.swing.JLabel();
jComboBox1 = new javax.swing.JComboBox();
jComboBox2 = new javax.swing.JComboBox();
jButton1 = new javax.swing.JButton();
jButton2 = new javax.swing.JButton();
jLabel5 = new javax.swing.JLabel();
jTextField2 = new javax.swing.JTextField();
setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
setResizable(false);
jLabel1.setText("\u6b22\u8fce\u6765\u5230\u5b66\u751f\u4fee\u6539\u754c\u9762\uff01");
jLabel2.setText("\u5b66\u751f\u59d3\u540d\uff1a");
jLabel3.setText("\u5b66\u751f\u6027\u522b\uff1a");
jLabel4.setText("\u5b66\u751f\u73ed\u7ea7\uff1a");
StudentDAO st=new StudentDAO();
Student st1=st.findById(id);
jComboBox1.setModel(new javax.swing.DefaultComboBoxModel(new String[] {
"男", "女" }));
if(st1.getStusex().equals("男")){
jComboBox1.setSelectedIndex(0);
}else{
jComboBox1.setSelectedIndex(1);
}
ClazzDAO dao=new ClazzDAO();
List list=dao.findAll();
String s[]=new String[list.size()];
for(int i=0;i
package com.ruide.ClazzManagerSystem;
import java.util.ArrayList;
import java.util.List;
import javax.swing.JOptionPane;
import StudentManagerSystem.StudentTable;
import com.ruide.dao.ClazzDAO;
import com.ruide.vo.Clazz;
public class ClazzManager extends javax.swing.JFrame {
public ClazzManager() {
initComponents();
setLocationRelativeTo(null);
}
private void initComponents() {
jScrollPane1 = new javax.swing.JScrollPane();
jTable1 = new javax.swing.JTable();
jButton1 = new javax.swing.JButton();
jButton2 = new javax.swing.JButton();
setResizable(false);//禁止改变窗体大小
setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
List list=new ArrayList();
ClazzDAO st=new ClazzDAO();
try {
list=st.findAll();
} catch (Exception e) {
e.printStackTrace();
}
ClazzDAO claDAO=new ClazzDAO();
List list1=claDAO.findAll();
Object studen[][]=new Object[list1.size()][];
ClazzDAO clz=new ClazzDAO();
for(int i=0;i
package com.ruide.ClazzManagerSystem;
import com.ruide.dao.ClazzDAO;
import com.ruide.vo.Clazz;
public class ClazzAdd extends javax.swing.JFrame {
public ClazzAdd() {
initComponents();
setLocationRelativeTo(null);
}
private void initComponents() {
jLabel1 = new javax.swing.JLabel();
jTextField1 = new javax.swing.JTextField();
jLabel2 = new javax.swing.JLabel();
jLabel3 = new javax.swing.JLabel();
jTextField2 = new javax.swing.JTextField();
jLabel4 = new javax.swing.JLabel();
jButton1 = new javax.swing.JButton();
jButton2 = new javax.swing.JButton();
setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
setResizable(false);
jLabel1.setText("\u8bf7\u6dfb\u52a0\u73ed\u7ea7\u7f16\u53f7\uff1a");
jLabel2.setText("\u4f8b\uff1a5");
jLabel3.setText("\u8bf7\u6dfb\u52a0\u73ed\u7ea7\u540d\u79f0\uff1a");
jLabel4.setText("\u4f8b\uff1a\u4e94\u73ed");
jButton1.setText("\u6dfb\u52a0");
jButton1.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
jButton1ActionPerformed(evt);
int id=new Integer(jTextField1.getText());
String name=new String(jTextField2.getText());
ClazzDAO dao=new ClazzDAO();
Clazz cl=new Clazz(id,name);
int i=dao.save(cl);
setVisible(false);
ClazzManager st2=new ClazzManager();
st2.setVisible(true);
st2.setLocationRelativeTo(null);
}
});
jButton2.setText("\u91cd\u7f6e");
jButton2.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
jTextField1.setText("");
jTextField2.setText("");
}
});
javax.swing.GroupLayout layout = new javax.swing.GroupLayout(
getContentPane());
getContentPane().setLayout(layout);
layout.setHorizontalGroup(layout
.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(
layout.createSequentialGroup()
.addGroup(
layout.createParallelGroup(
javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(
layout.createSequentialGroup()
.addGap(38, 38,
38)
.addGroup(
layout.createParallelGroup(
javax.swing.GroupLayout.Alignment.LEADING,
false)
.addGroup(
layout.createSequentialGroup()
.addPreferredGap(
javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addComponent(
jLabel1)
.addPreferredGap(
javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addComponent(
jTextField1,
javax.swing.GroupLayout.PREFERRED_SIZE,
67,
javax.swing.GroupLayout.PREFERRED_SIZE))
.addGroup(
layout.createSequentialGroup()
.addComponent(
jLabel3)
.addPreferredGap(
javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addComponent(
jTextField2)))
.addGap(18, 18,
18)
.addGroup(
layout.createParallelGroup(
javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(
jLabel2)
.addComponent(
jLabel4)))
.addGroup(
layout.createSequentialGroup()
.addGap(69, 69,
69)
.addComponent(
jButton1)
.addGap(47, 47,
47)
.addComponent(
jButton2)))
.addContainerGap(38, Short.MAX_VALUE)));
layout.setVerticalGroup(layout
.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(
layout.createSequentialGroup()
.addGap(44, 44, 44)
.addGroup(
layout.createParallelGroup(
javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(jLabel2)
.addComponent(jLabel1)
.addComponent(
jTextField1,
javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.PREFERRED_SIZE))
.addPreferredGap(
javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addGroup(
layout.createParallelGroup(
javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(jLabel3)
.addComponent(
jTextField2,
javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(jLabel4))
.addPreferredGap(
javax.swing.LayoutStyle.ComponentPlacement.RELATED,
26, Short.MAX_VALUE)
.addGroup(
layout.createParallelGroup(
javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(jButton2)
.addComponent(jButton1))
.addGap(23, 23, 23)));
pack();
}//
//GEN-END:initComponents
private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {
// TODO add your handling code here:
}
/**
* @param args the command line arguments
*/
public static void main(String args[]) {
java.awt.EventQueue.invokeLater(new Runnable() {
public void run() {
new ClazzAdd().setVisible(true);
}
});
}
private javax.swing.JButton jButton1;
private javax.swing.JButton jButton2;
private javax.swing.JLabel jLabel1;
private javax.swing.JLabel jLabel2;
private javax.swing.JLabel jLabel3;
private javax.swing.JLabel jLabel4;
private javax.swing.JTextField jTextField1;
private javax.swing.JTextField jTextField2;
}
package com.ruide.SuperManagerSystem;
import javax.swing.JOptionPane;
import StudentManagerSystem.StudentTable;
import com.ruide.dao.SuperManagerDAO;
import com.ruide.vo.SuperManager;
public class StudentLogin extends javax.swing.JFrame {
public StudentLogin() {
initComponents();
setLocationRelativeTo(null);
}
private void initComponents() {
jLabel1 = new javax.swing.JLabel();
jLabel2 = new javax.swing.JLabel();
jTextField1 = new javax.swing.JTextField();
jLabel3 = new javax.swing.JLabel();
jPasswordField1 = new javax.swing.JPasswordField();
jButton1 = new javax.swing.JButton();
jButton2 = new javax.swing.JButton();
setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
setResizable(false);//禁止改变窗体大小
jLabel1.setText("\u5b66\u751f\u7ba1\u7406\u7cfb\u7edf");
jLabel2.setText("\u8bf7\u8f93\u5165\u7528\u6237\u59d3\u540d\uff1a");
jLabel3.setText("\u8bf7\u8f93\u5165\u7528\u6237\u5bc6\u7801\uff1a");
jPasswordField1.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
jPasswordField1ActionPerformed(evt);
}
});
jButton1.setText("\u767b\u5f55");
jButton1.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
jButton1ActionPerformed(evt);
String user=new String(jTextField1.getText());
String psw=new String(jPasswordField1.getPassword());
SuperManagerDAO dao=new SuperManagerDAO();
try{
SuperManager d=dao.findByName(user,psw);
if(d!=null){
JOptionPane.showMessageDialog(null, "恭喜您,登陆成功!!");
setVisible(false);
StudentTable st=new StudentTable();
st.setVisible(true);
st.setLocationRelativeTo(null);
}else{
JOptionPane.showMessageDialog(null, "查无此人,请重新登陆!!");
}
} catch (Exception e) {
e.printStackTrace();
}
}
});
jButton2.setText("\u91cd\u7f6e");
jButton2.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
jButton1ActionPerformed(evt);
jTextField1.setText("");
jPasswordField1.setText("");
}
});
javax.swing.GroupLayout layout = new javax.swing.GroupLayout(
getContentPane());
getContentPane().setLayout(layout);
layout.setHorizontalGroup(layout
.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(
layout.createSequentialGroup()
.addGroup(
layout.createParallelGroup(
javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(
layout.createSequentialGroup()
.addGap(173,
173,
173)
.addComponent(
jLabel1,
javax.swing.GroupLayout.PREFERRED_SIZE,
112,
javax.swing.GroupLayout.PREFERRED_SIZE))
.addGroup(
layout.createSequentialGroup()
.addGap(66, 66,
66)
.addGroup(
layout.createParallelGroup(
javax.swing.GroupLayout.Alignment.TRAILING)
.addComponent(
jLabel3)
.addComponent(
jLabel2))
.addGap(54, 54,
54)
.addGroup(
layout.createParallelGroup(
javax.swing.GroupLayout.Alignment.LEADING,
false)
.addComponent(
jTextField1)
.addComponent(
jPasswordField1,
javax.swing.GroupLayout.DEFAULT_SIZE,
132,
Short.MAX_VALUE)))
.addGroup(
layout.createSequentialGroup()
.addGap(117,
117,
117)
.addComponent(
jButton1)
.addGap(70, 70,
70)
.addComponent(
jButton2)))
.addContainerGap(98, Short.MAX_VALUE)));
layout.setVerticalGroup(layout
.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(
layout.createSequentialGroup()
.addContainerGap()
.addComponent(jLabel1,
javax.swing.GroupLayout.PREFERRED_SIZE,
26,
javax.swing.GroupLayout.PREFERRED_SIZE)
.addGap(36, 36, 36)
.addGroup(
layout.createParallelGroup(
javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(
jTextField1,
javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(
jLabel2,
javax.swing.GroupLayout.PREFERRED_SIZE,
21,
javax.swing.GroupLayout.PREFERRED_SIZE))
.addGap(48, 48, 48)
.addGroup(
layout.createParallelGroup(
javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(jLabel3)
.addComponent(
jPasswordField1,
javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.PREFERRED_SIZE))
.addPreferredGap(
javax.swing.LayoutStyle.ComponentPlacement.RELATED,
45, Short.MAX_VALUE)
.addGroup(
layout.createParallelGroup(
javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(jButton1)
.addComponent(jButton2))
.addGap(34, 34, 34)));
pack();
}
private void jPasswordField1ActionPerformed(java.awt.event.ActionEvent evt) {
}
private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {
}
public static void main(String args[]) {
java.awt.EventQueue.invokeLater(new Runnable() {
public void run() {
new StudentLogin().setVisible(true);
}
});
}
private javax.swing.JButton jButton1;
private javax.swing.JButton jButton2;
private javax.swing.JLabel jLabel1;
private javax.swing.JLabel jLabel2;
private javax.swing.JLabel jLabel3;
private javax.swing.JPasswordField jPasswordField1;
private javax.swing.JTextField jTextField1;
}
package com.ruide.test;
import java.util.List;
import com.ruide.dao.ClazzDAO;
import com.ruide.dao.StudentDAO;
import com.ruide.vo.Clazz;
import com.ruide.vo.Student;
public class Test {
public static void main11(String[] args){
StudentDAO dao=new StudentDAO();
List list=dao.findAll();
for(Student st:list){
System.out.println(st.getStuid()+" "+st.getStuname()+" "+st.getStusex()+" "+st.getClazzid());
}
}
public static void main10(String[] args){
StudentDAO dao=new StudentDAO();
int i=3;
Student st=dao.findById(i);
if(st!=null){
System.out.println(st.getStuid()+" "+st.getStuname()+" "+st.getStusex()+" "+st.getClazzid());
}else{
System.out.println("查无此人");
}
}
public static void main12(String[] args){
StudentDAO dao=new StudentDAO();
try {
int id=20;
int i = dao.delete(id);
if(i>0){
System.out.println("恭喜您,数据删除成功!");
}else{
System.out.println("数据删除失败!");
}
} catch (Exception e) {
e.printStackTrace();
}
}
public static void main(String[] args){
StudentDAO dao=new StudentDAO();
int id=20;
String name="赵世飞";
String sex="男";
int clazz=3;
Student st=new Student();
st.setStuid(id);
st.setStuname(name);
st.setStusex(sex);
st.setClazzid(clazz);
int i=dao.save(st);
if(i>0){
System.out.print("恭喜您,数据添加成功!");
}else{
System.out.println("数据添加失败!!");
}
}
public static void main9(String[] args){
StudentDAO dao=new StudentDAO();
Student st=new Student();
st.setStuid(20);
st.setStuname("赵世飞1");
st.setStusex("女");
st.setClazzid(5);
int i=dao.change(st);
if(i>0){
System.out.println("恭喜您,数据修改成功!");
}else{
System.out.println("数据修改失败!!");
}
}
public static void main8(String[] args){
Student st=new Student();
StudentDAO dao=new StudentDAO();
String name="李泽旭";
st=dao.findByName(name);
System.out.println(st.getStuid()+" "+st.getStuname()+" "+st.getStusex()+" "+st.getClazzid());
}
}