package com.iamu.view;
import javax.swing.JLabel;
import javax.swing.JScrollPane;
import javax.swing.JTextArea;
import com.imau.base.BaseFrame;
public class HelpView extends BaseFrame{
private JTextArea ldoc;
private JScrollPane pane;
private String doc="点击添加正文、温提示正文行距在1.2~1.3之间点击添加正文、温"
+ "提示正文行距在1.2~1.3之间,议开始,老师们怎样度过大学时代给了同学们"
+ "几点建议。接着,刘老师发表了题为“适"
+ "应新要求,完成新转化,确立新目标";
//构造方法
public HelpView(){
this.setJMenuBar(initMenu());
init();
setFrame();
}
private void init(){
ldoc=new JTextArea(doc,30,30);
pane=new JScrollPane(ldoc);
this.add(pane);
}
}
package com.iamu.view;
import java.awt.;
import javax.swing.;
import com.iamu.controller.UserController;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
public class Login extends JFrame {
private UserController controller;
private JLabel lname;
private JLabel lpass;
private JTextField tname;//用户名是明文
private JPasswordField tpass;//密码不是明文
private JButton login;
private void initEvnet(){
login.addActionListener(new MyListener());
}
private void init(){
lname=new JLabel("用户名");
lpass=new JLabel("密码");
tname=new JTextField(14);
tpass=new JPasswordField(14);
login=new JButton ("登录");
initEvnet();//做调用
this.setLayout(new FlowLayout(FlowLayout.CENTER));
this.add(lname);
this.add(tname);
this.add(lpass);
this.add(tpass);
this.add(login);
Dimension dim=getToolkit().getScreenSize();
int w=dim.height/2;
int h=dim.width/2;
this.setResizable(false);
this.setTitle("用户登录");
this.setSize(230,150);
this.setLocation(w-230/2,h-150/2);
this.setVisible(true);
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
public Login(){
init();
controller=new UserController();
}
public void close(){
this.setVisible(false);
}
//处理器的方法
class MyListener implements ActionListener{
@Override
public void actionPerformed(ActionEvent e) {
String uname=tname.getText();
String upass=tpass.getText();
//检查用户名密码
if(controller.login(uname, upass)){
//关闭当前页面
close();
//显示主页面
new MainView();
}else{
System.out.println("用户名密码错误");
}
}
}
}
package com.iamu.view;
import javax.swing.JLabel;
import javax.swing.JMenuBar;
import com.imau.base.BaseFrame;
/**
-
系统主页面:显示基本信息
*/
public class MainView extends BaseFrame {private JLabel label;
//private JMenuBar menuBar;
//public void addMenu(){
// menuBar=initMenu();
//this.setJMenuBar(menuBar);
//}//构造方法
public MainView(){label=new JLabel("欢迎使用学生管理系统!",JLabel.CENTER); this.add(label); //添加菜单 //addMenu(); this.setJMenuBar(initMenu()); setFrame();
}
}
package com.iamu.view;
import java.awt.GridLayout;
import javax.swing.JButton;
import javax.swing.JLabel;
import javax.swing.JTextField;
import com.imau.base.BaseFrame;
/*
*
- id,name,sex,age,image,民族
*/
public class StudentAddView extends BaseFrame{
//定义需要的组件
private JLabel lid;
private JLabel lname;
private JLabel lsex;
private JLabel lage;
private JLabel limage;
private JLabel lnation;
private JTextField tid;
private JTextField tname;
private JTextField tsex;
private JTextField tage;
private JTextField timage;
private JTextField tnation;
private JButton submit,cancel;
//构造方法
public StudentAddView(){
this.setJMenuBar(initMenu());
init();
setFrame();
}
private void init(){
lid=new JLabel("ID");
lname=new JLabel("姓名");
lsex=new JLabel("性别");
lage=new JLabel("年龄");
limage=new JLabel("头像");
lnation=new JLabel("民族");
tid=new JTextField(10);
tname=new JTextField(10);
tsex=new JTextField(10);
tage=new JTextField(10);
timage=new JTextField(10);
tnation=new JTextField(10);
submit=new JButton ("添加");
cancel=new JButton ("取消");
//添加事件
addEvent();
//设置布局,添加组件
setLayout(new GridLayout(7,2));
this.add(lid);
this.add(tid);
this.add(lname);
this.add(tname);
this.add(lnation);
this.add(tnation);
this.add(lage);
this.add(tage);
this.add(lsex);
this.add(tsex);
this.add(limage);
this.add(timage);
this.add(submit);
this.add(cancel);
}
//事件监听
private void addEvent(){
submit.addActionListener(new MyListener());
cancel.addActionListener(new MyListener());
}
}
package com.iamu.view;
import java.awt.BorderLayout;
import javax.swing.JButton;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JScrollPane;
import javax.swing.JTable;
import javax.swing.JTextField;
import com.imau.base.BaseFrame;
public class StudentListView extends BaseFrame{
//定义组件
//第一部分
//搜索框
private JTextField tsearch;
//搜索按钮
private JButton searchBnt;
//添加学生按钮
private JButton addStu;
//第二部
//学生列表
private JTable table;
private String columnNames[]={ "序号","ID","姓名","学号","年龄","性别","民族","操作"};
private Object rowDate[][]={
{"1","1","李三","20181",21,"女","汉族",new JButton("删除")},
{"2","2","张三","20182",21,"男","蒙族",new JButton("删除")},
{"3","3","钱三","20183",25,"女","蒙族",new JButton("删除")}
};
private JScrollPane scrollPane ;
//第三部分
//首页、上一页、下一页、尾页、跳转 按钮
private JButton homeBtn,upBtn,nextBtn,endBtn,jumpBtn;
//跳转输入框
private JTextField tjump;
//显示页面基本信息
private JLabel lpage;
//装载每一部分的组件
private JPanel panel,panel2,panel3;
//构造方法
public StudentListView(){
this.setJMenuBar(initMenu());
init();
setFrame();
}
private void init(){
//第一部分
tsearch=new JTextField("按照姓名查询",10);
searchBnt=new JButton("搜索");
addStu=new JButton("添加学生");
table=new JTable(rowDate,columnNames);
scrollPane=new JScrollPane(table);
//第三部分
homeBtn=new JButton("首页");
upBtn=new JButton("上一页");
nextBtn=new JButton("下一页");
endBtn=new JButton("尾页");
jumpBtn=new JButton("跳转");
tjump=new JTextField(5);
lpage=new JLabel("共5032条 11/420");
panel=new JPanel();
//panel2=new JPanel();
panel3=new JPanel();
panel.add(tsearch);
panel.add(searchBnt);
panel.add(addStu);
//panel2.add(scrollPane);
panel3.add(lpage);
panel3.add(homeBtn);
panel3.add(upBtn);
panel3.add(nextBtn);
panel3.add(endBtn);
panel3.add(jumpBtn);
panel3.add(tjump);
this.add(panel,BorderLayout.NORTH);
this.add(scrollPane,BorderLayout.CENTER);
this.add(panel3,BorderLayout.SOUTH);
//铺满整个容器
this.pack();
}
}
package com.iamu.view;
import java.awt.GridLayout;
import javax.swing.JButton;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JPasswordField;
import javax.swing.JTextField;
import com.imau.base.BaseFrame;
public class UserPassEditView extends BaseFrame {
private JLabel loldPass;
private JLabel lnewPass;
private JLabel lnewPassConfim;
private JPasswordField toldPass;
private JPasswordField tnewPass;
private JPasswordField tnewPassConfim;
private JButton submit,cancel;
private JPanel panel;
//构造方法
public UserPassEditView(){
this.setJMenuBar(initMenu());
init();
setFrame();
}
private void init(){
loldPass=new JLabel("旧密码");
lnewPass=new JLabel("新密码");
lnewPassConfim=new JLabel("确认新密码");
toldPass=new JPasswordField(10);
tnewPass=new JPasswordField(10);
tnewPassConfim=new JPasswordField(10);
submit=new JButton ("确认");
cancel=new JButton ("取消");
panel=new JPanel();
panel.add(loldPass);
panel.add(toldPass);
panel.add(lnewPass);
panel.add(tnewPass);
panel.add(lnewPassConfim);
panel.add(tnewPassConfim);
panel.add(submit);
panel.add(cancel);
this.add(panel);
}
}
package com.imau.base;
import java.awt.;
import javax.swing.;
import com.iamu.view.HelpView;
import com.iamu.view.StudentListView;
import com.iamu.view.UserPassEditView;
import java.awt.event.*;
/**
*
- @author John
*基础窗体类:设置窗体的基本属性 -
这是基本的样式
*/
public class BaseFrame extends JFrame{
//定义窗体菜单
private JMenuBar menuBar;
//三个菜单
private JMenu stuMenu,userMenu, helpMenu;
//菜单下的选项
private JMenuItem stuMenuItem;
private JMenuItem passMenuItem;
private JMenuItem helpMenuItem;
//所有的菜单初始化事件
public void initEvent(){
//动作事件
stuMenuItem.addActionListener(new MyListener());
passMenuItem.addActionListener(new MyListener());
helpMenuItem.addActionListener(new MyListener());
}
public JMenuBar initMenu(){
//1.菜单栏
menuBar=new JMenuBar();
//2.菜单
stuMenu=new JMenu("学生管理");
userMenu=new JMenu("用户管理");
helpMenu=new JMenu("帮助");
//3.菜单选项
stuMenuItem=new JMenuItem("学生列表");
passMenuItem=new JMenuItem("密码修改");
helpMenuItem=new JMenuItem("帮助文档");
//4.菜单添加项
stuMenu.add(stuMenuItem);
userMenu.add(passMenuItem);
helpMenu.add(helpMenuItem);
menuBar.add(stuMenu);
menuBar.add(userMenu);
menuBar.add(helpMenu);
//初始化事件
initEvent();
return menuBar;
}
//创建一个构造方法
public BaseFrame(){
}
//初始化窗体基本属性
public void setFrame(){
Dimension dim=this.getToolkit().getScreenSize();
int w=(int) dim.getWidth();
int h=(int) dim.getHeight();
this.setBounds((int) (w*0.5-w*0.4/2),(int) (h*0.5-h*0.3/2),(int) (w*0.4),(int) (h*0.3));
//不可更改窗体的大小
this.setResizable(false);
this.setTitle("学生管理系统");
this.setVisible(true);
//设置关闭模式
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
//关闭当前窗口
public void close(){
this.setVisible(false);
}
public class MyListener implements ActionListener{
@Override
public void actionPerformed(ActionEvent e) {
//判断单击了学生列表
if(e.getSource()==stuMenuItem){
close();
new StudentListView();
}
//修改密码
if(e.getSource()==passMenuItem){
close();
new UserPassEditView();
}
//帮助菜单
if(e.getSource()==helpMenuItem){
close();
new HelpView();
}
}
}
}
package com.imau.entry;
/*
*
-
用户表
*/
public class User {private Integer id;
private String uname;
private String upass;public User(){
}
public User(Integer id,String uname,String upass){
this.id= id; this.uname=uname; this.upass=upass;
}
public User(String uname,String upass){
this.uname=uname; this.upass=upass;
}
public Integer getId(){
return id;
}
public void setId(Integer id){
this.id=id;}
public String getUname(){
return uname;
}
public void setUname(String uname){
this.uname=uname;}
public String getUpass(){
return upass;
}
public void setUpass(String upass){
this.upass=upass;}
@Override
public String toString() {
return “User [id=” + id + “, uname=” + uname + “, upass=” + upass + “]”;
}
}
package com.iamu.service;
import com.imau.dao.UserDao;
public class UserService {
private UserDao dao;
//在构造方法中初始化
public UserService(){
dao=new UserDao();
}
//按照用户名密码去查询:admin 123456
public boolean byNamePass(String uname,String upass) {
//select*from user where uname=?>
//dao.query(sql)
if(uname.equals("admin")&&upass.equals("123456")){
return true;
}
return false;
}
}
package com.iamu.jdbc;
import java.sql.;
import javax.sql.;
public class Text {
public static void main(String[] args) throws Exception{
Connection conn;
Statement stm;
ResultSet rs;
PreparedStatement pstm;
//jdbc:mysql://
String url="jdbc:mysql://localhost:3306/stucms";
String user="root";
String password="123456";
//1.准备驱动
//2.注册驱动:驱动接口 连接接口 执行命令接口 结果集接口
//Driver driver=new com.mysql.jdbc.Driver();
//注册驱动:驱动名
Class.forName("com.mysql.jdbc.Driver");
//3.注册管理器
conn=DriverManager.getConnection(url, user, password);
//获取执行sql命令
stm=conn.createStatement();
//5.执行sql命令
//rs=stm.executeQuery("SELECT*from user ");
//预处理命令
pstm=conn.prepareStatement("select *from user where uname =? and upass =?");
//填充占位符
pstm.setString(1, "text");
pstm.setString(2, "text");
//执行命令
rs=pstm.executeQuery();
//6.处理结果
while(rs.next()){
int id=rs.getInt(1);
String name=rs.getString(2);
String pass=rs.getString(3);
System.out.println(id+","+name+","+pass);
}
//7.关闭
rs.close();
stm.close();
conn.close();
}
}