面向对象程序设计课程设计报告
代码行数 780 项目名称 图书管理系统 1.实训目的 面向对象程序设计课程设计是计算机科学与技术专业培养计划中的重要实践教学环节,旨在通过一个管理信息系统的开发,加深学生对Java语言的理解和应用,尤其是对面向对象编程思想、Java编码规范、图形用户接口、JDBC访问数据库的理解,巩固软件工程课程的相关知识,了解软件开发的基本流程,进一步提高学生的学习能力、理解能力、表达能力及沟通能力。 2.实训内容 使用MyEclipse为开发工具,使用Rational Rose为建模工具,使用MySQL为数据库服务器,基于GUI和JDBC技术,分析、设计并实现一个管理信息系统。 3.需求分析 3.1 需求描述 网络技术高速发展,利用计算机对图书馆的日常工作进行管理已经普遍应用于各类图书管理领域。传统的人工管理方式下,管理员不能及时了解图书馆内各类图书的借阅情况,读者需要的图书难以在短时间内找到,不便于动态及时地调整图书结构。基于不同技术开发的各种类图书管理系统已经大量出现。采用图书管理系统进行图书馆的日常管理工作可以充分发挥图书馆的功效,更大限度地为读者服务,这也是图书馆自动化管理的重要一步。为能够更好的完成这一步,就必须有现代化的管理手段、管理体制及技术支持。完善的图书馆管理系统可以节省人力资源,减少开销,发挥图书馆的最大效益。 3.2 用例描述 图3.1 图书管理系统用例图 4.功能设计
- 1 -
面向对象程序设计课程设计报告
4.1 系统层次方框图
图4.1图书管理系统层次方框图
4.2 算法设计(活动图或时序图)
- 2 -
面向对象程序设计课程设计报告
1.登录功能
在主界面(MainView)输入账号和密码,封装成Login对象后发后给业务层(LoginService),在业务层中组合成执行登录操作的SQL语句,再将其传递给数据库访问类(DB),由其完成数据库的查询操作。依据查询结果,如果成功则创建控制类(Controller)对象,显示欢迎信息和对图书信息进行维护的选项;如果失败,则显示提示信息并允许重新输入账号和密码。
图4.2 登录功能时序图
2.显示所有图书信息功能
登录成功及完成对图书信息增、删、改操作后,均需要进行所有图书信息的显示,由控制类(Controller)调用视图层(MainView)中的方法,在方法中再利用业务层(UserService)完成对数据库访问类(DB)的访问,获取book_message表的所有记录。
图4.3 显示所有图书信息时序图
3.添加图书信息功能
- 3 -
面向对象程序设计课程设计报告
在控制类(Controller)输出的选择信息的提示下(1表示执行添加操作),利用简单工厂模式创建视图层(AddView)对象,之后回调接口方法,完成对业务层(UserService)中注册方法的调用,在该方法中向数据库访问类(DB)发送添加SQL语句。如果添加成功,则显示所有图书信息;如果添加失败,则提示重新输入。
图4.4 图书信息添加时序图
4.查询图书信息功能
在控制类(Controller)输出的选择信息的提示下(4表示执行添加操作),利用简单工厂模式创建视图层(QueryView)对象,之后回调接口方法,在方法中输入要查询的图书名,再对业务层(UserService)中查询方法执行调用,在该方法中向数据库访问类(DB)发送模糊查询SQL语句。如果查询成功,则显示查询到的图书信息(参考显示所有用户信息功能的实现);如果查询失败,则提示重新输入。
图4.5 查询图书信息时序图
- 4 -
面向对象程序设计课程设计报告
5.数据设计
5.1 类图设计
图5.1 登录及操作层类图
图5.2 系统层类图
- 5 -
面向对象程序设计课程设计报告
5.2 数据表设计 表5.1 user_message表 字段 id username userpass 类型 int varchar varchar 长度 50 50 是否为空 Not null Not null Not null 描述 主键,自动增长 用户名 用户密码 表5.2 book_message表 字段 id name price press author 类型 int varchar float varchar varchar 长度 50 50 50 是否为空 Not null Not null Not null Not null Not null 描述 主键,自动增长 图书名 图书价格 出版社 图书作者 6.运行结果 1.登录 用户可在系统首界面直接输入账号和密码进行登录,当密码错误时会进行提示,若连续输错三次将会直接退出程序,登录成功后显示所有用户信息和系统主控制界面。 图6.1 登录界面
- 6 -
面向对象程序设计课程设计报告
图6.2 密码错误提示
2.主界面
用户可直接在主界面进行各种操作。
图6.3 密码错误提示
- 7 -
面向对象程序设计课程设计报告
3.添加
选择用户信息,点击添加按钮。依次输入图书的信息,完成添加。添加成功后,显示成功的提示信息,并显示所有图书信息和系统主控制界面。如果添加失败,则显示失败的提示信息。
图6.4 添加图书信息操作
4.删除
选择图书信息,点击删除按钮。完成删除,删除成功后,显示成功的提示信息,并显示所有图书信息和系统主控制界面。如果删除失败,则显示删除失败的提示信息。
图6.5 删除图书信息操作
- 8 -
面向对象程序设计课程设计报告
5.修改
选择图书信息,再依次输入要修改的图书信息,点击修改按钮。修改成功后,显示成功的提示信息,并显示所有图书信息和系统主控制界面。如果修改失败,则显示修改失败的提示信息。
图6.6 修改图书信息操作
6.模糊查询
输入想要查询的图书作者,点击查询按钮。显示以改名称作为关键字的所有图书的信息,之后显示所有图书信息和系统主控制界面,若没查到会提示。
图6.7 模糊查询图书信息操作
- 9 -
面向对象程序设计课程设计报告
7.精准查询
输入想要查询的图书作者,点击查询按钮。显示以改名称作为关键字的所有图书的信息,之后显示所有图书信息和系统主控制界面,若没查到会提示。
图6.8 精准查询图书信息操作
- 10 -
面向对象程序设计课程设计报告
7.关键代码
一、数据库访问类(DBconn.java)
package System;
import java.sql.*;
public class DBConn{ ;
}catch(SQLException e){
- 11 -
private final static String DRIVER = \"com.mysql.jdbc.Driver\"; private final String URL = \"jdbc:mysql://localhost:3306/book\"; private final String USERNAME = \"root\"; private final String PASSWORD = \"123456\";
private Connection conn; private Statement st; private ResultSet rs; private int n; static{ }
public Connection getConn(){ }
//创建执行sql语句对象 public Statement getSt(){
st=conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE)
conn = this.getConn(); try{ try{ }
return conn;
conn = DriverManager.getConnection(URL,USERNAME,PASSWORD); e.printStackTrace(); }catch (SQLException e){ try{ }
Class.forName(DRIVER); e.printStackTrace();
}catch (ClassNotFoundException e) {
面向对象程序设计课程设计报告
}
public ResultSet getRs(String sql){ //查询 }
public int getN(String sql){ //更新 }
public void closeQuery(){//关闭 } }
try{ }
rs.close(); st.close(); conn.close(); e.printStackTrace(); st = this.getSt(); try { }
return n;
n = st.executeUpdate(sql); e.printStackTrace(); } catch (SQLException e) { st = this.getSt(); try { }
return rs;
rs = st.executeQuery(sql); e.printStackTrace(); } catch (SQLException e) { }
return st;
e.printStackTrace();
}catch (SQLException e) {
二、数据封装类
package our;
public class Book {
int id;
- 12 -
面向对象程序设计课程设计报告
}
String name; float price; String press; String author;
public int getId() { }
public void setId(int id) { }
public String getName() { }
public void setName(String name) { }
public float getPrice() { }
public void setPrice(float price) { }
public String getPress() { }
public void setPress(String press) { }
public String getAuthor() { }
public void setAuthor(String author) { }
this.author = author; return author; this.press = press; return press; this.price = price; return price; this.name = name; return name; this.id = id; return id;
- 13 -
面向对象程序设计课程设计报告
三、业务层 1、Linksql.java package our;
import java.awt.EventQueue;
import javax.swing.JFrame; import javax.swing.JPanel;
import javax.swing.border.EmptyBorder; import javax.swing.JLabel; import javax.swing.JOptionPane; import javax.swing.JTextField; import javax.swing.JButton; import java.awt.event.ActionListener; import java.sql.Connection; import java.sql.DriverManager; import java.sql.PreparedStatement; import java.sql.ResultSet; import java.awt.event.ActionEvent; import java.awt.Color; import java.awt.Font;
public class Linksql extends JFrame {
/** * */
private static final long serialVersionUID = 2517936900722655375L; int i = 3;
- 14 -
面向对象程序设计课程设计报告
/**
* Create the frame. */
public Linksql() {
setTitle(\"\图\书\信\息\管\理\系\统\登\录\"); setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); setBounds(100, 100, 430, 300); contentPane = new JPanel(); /**
* Launch the application. */
public static void main(String[] args) { }
EventQueue.invokeLater(new Runnable() { });
public void run() { }
try {
Linksql frame = new Linksql(); frame.setVisible(true);
private JPanel contentPane; private JTextField textField; private JTextField textField_1;
} catch (Exception e) { }
e.printStackTrace();
- 15 -
面向对象程序设计课程设计报告
JButton btnNewButton = new JButton(\"\登\录\"); //登录按钮 btnNewButton.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent arg0) {
Connection conn = null;
textField_1 = new JTextField();
textField_1.setBounds(154, 133, 160, 24); contentPane.add(textField_1); textField_1.setColumns(10);
textField = new JTextField(); textField.setBounds(154, 88, 160, 24); contentPane.add(textField); textField.setColumns(10);
JLabel lblNewLabel_1 = new JLabel(\"\密\码\:\"); lblNewLabel_1.setBounds(96, 136, 72, 18); contentPane.add(lblNewLabel_1);
JLabel lblNewLabel = new JLabel(\"\用\户\名\:\"); lblNewLabel.setBounds(96, 94, 72, 18); contentPane.add(lblNewLabel);
contentPane.setForeground(Color.BLACK); contentPane.setToolTipText(\"\");
contentPane.setBorder(new EmptyBorder(5, 5, 5, 5)); setContentPane(contentPane); contentPane.setLayout(null);
- 16 -
面向对象程序设计课程设计报告
try {
Class.forName(\"com.mysql.jdbc.Driver\");
conn = DriverManager.getConnection(\"jdbc:mysql://localhost:3306/book\
\"123456\");
user_message where
username=? and userpass=?\";
String sql = \"select*from
PreparedStatement pst = conn.prepareStatement(sql,
ResultSet.TYPE_SCROLL_SENSITIVE,
ResultSet.CONCUR_READ_ONLY);
pst.setString(1, textField.getText()); pst.setString(2, textField_1.getText()); ResultSet rs = pst.executeQuery(); if (rs.next()) {
select s = new select(); s.setVisible(true); setVisible(false);
} else {
int t=i-1;
JOptionPane.showMessageDialog(null, \"错误的用户名或密码,错误\" + t + \"次后
退出\");
}
if (i == 0) { } rs.close();
i = 3;
System.exit(0); textField_1.setText(\"\"); i--;
} catch (Exception e) {
- 17 -
面向对象程序设计课程设计报告
JLabel label = new JLabel(\"\图\书\信\息\管\理\系\统\"); label.setFont(new Font(\"微软雅黑 Light\label.setBounds(66, 6, 292, 75);
});
button.setBounds(214, 182, 100, 27); contentPane.add(button);
}
JButton button = new JButton(\"\退\出\"); button.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent arg0) {
System.exit(0);
});
btnNewButton.setBounds(100, 182, 100, 27); contentPane.add(btnNewButton);
}
JOptionPane.showMessageDialog(null, e.getMessage()); } finally { }
if (conn != null) { }
try {
conn.close();
} catch (Exception e) { }
e.printStackTrace();
- 18 -
面向对象程序设计课程设计报告
}
2、select.java package our;
import java.awt.BorderLayout; import java.awt.EventQueue;
import javax.swing.JFrame; import javax.swing.JPanel;
import javax.swing.border.EmptyBorder;
import javax.swing.table.DefaultTableCellRenderer; import javax.swing.table.DefaultTableModel; import System.Function; import javax.swing.JButton; import javax.swing.JScrollPane; import javax.swing.JTable;
import java.awt.event.ActionListener; import java.sql.Connection; import java.sql.DriverManager; import java.sql.PreparedStatement; import java.sql.ResultSet; import java.sql.SQLException; import java.util.jar.Attributes.Name; import java.awt.event.ActionEvent; import javax.swing.JTextField;
}
contentPane.add(label);
- 19 -
面向对象程序设计课程设计报告
import javax.swing.JLabel; import javax.swing.JOptionPane; import java.awt.event.MouseAdapter; import java.awt.event.MouseEvent; import java.awt.Color;
public class select extends JFrame {
private JPanel contentPane; private JTable table;
private String str[]={\"编号\图书名\图书价格\出版社\图书作者\private JTextField textField; private JLabel label; private JLabel lblNewLabel; private JTextField textField_1; private JLabel label_1; private JLabel label_2; private JTextField textField_2; private JTextField textField_3; private JButton button_1; private JButton button_2; private JButton button_3; private JButton button_4; private JTextField textField_4; private JButton button_6; private JLabel label_4; /**
* Launch the application.
- 20 -
面向对象程序设计课程设计报告
/**
* Create the frame. */
public select() {//查询全部
setTitle(\"\图\书\信\息\管\理\系\统\"); setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); setBounds(100, 100, 667, 500); contentPane = new JPanel();
contentPane.setBorder(new EmptyBorder(5, 5, 5, 5)); setContentPane(contentPane); contentPane.setLayout(null);
JButton button = new JButton(\"\显\示\全\部\"); button.addActionListener(new ActionListener() { */
public static void main(String[] args) { }
EventQueue.invokeLater(new Runnable() { });
public void run() { }
try {
select frame = new select(); frame.setVisible(true);
} catch (Exception e) { }
e.printStackTrace();
- 21 -
面向对象程序设计课程设计报告
public void actionPerformed(ActionEvent arg0) {
Function c = new Function(); ResultSet rs = c.Select(); try{
if(rs.last()){
int a = rs.getRow();
Object[][] date = new Object[a][];
int b = rs.getMetaData().getColumnCount(); rs.beforeFirst(); int i=0; while(rs.next()){ }
DefaultTableModel m = new DefaultTableModel(date,str); table.setModel(m);
date[i] = new Object[b]; for(int j=0;jdate[i][j]=rs.getObject(j+1);
}else{ }
}catch (SQLException e1) { }
table.setVisible(false); table.setVisible(true);
e1.printStackTrace();
- 22 -
面向对象程序设计课程设计报告
});
button.setBounds(470, 104, 113, 27); contentPane.add(button);
JScrollPane scrollPane = new JScrollPane(); scrollPane.setBounds(0, 182, 649, 245); contentPane.add(scrollPane);
table = new JTable();
table.addMouseListener(new MouseAdapter() { });
@Override
public void mouseClicked(MouseEvent arg0) {//鼠标监听 }
int row = table.getSelectedRow();
String number = String.valueOf(table.getValueAt(row, 0)); String name = String.valueOf(table.getValueAt(row, 1)); String price = String.valueOf(table.getValueAt(row, 2)); String press = String.valueOf(table.getValueAt(row, 3)); String author = String.valueOf(table.getValueAt(row, 4));
textField.setText(name); textField_1.setText(price); textField_2.setText(press); textField_3.setText(author); textField_4.setText(number); }
- 23 -
面向对象程序设计课程设计报告
scrollPane.setViewportView(table);
textField = new JTextField(); textField.setBounds(413, 13, 170, 24); contentPane.add(textField); textField.setColumns(10);
label = new JLabel(\"\图\书\名\:\"); label.setBounds(339, 16, 72, 18); contentPane.add(label);
lblNewLabel = new JLabel(\"\图\书\价\格\:\"); lblNewLabel.setBounds(49, 63, 84, 18); contentPane.add(lblNewLabel);
textField_1 = new JTextField(); textField_1.setBounds(135, 60, 170, 24); contentPane.add(textField_1); textField_1.setColumns(10);
label_1 = new JLabel(\"\出\版\社\:\"); label_1.setBounds(339, 60, 72, 18); contentPane.add(label_1);
label_2 = new JLabel(\"\图\书\作\者\:\"); label_2.setBounds(49, 108, 84, 18); contentPane.add(label_2);
- 24 -
面向对象程序设计课程设计报告
textField_2 = new JTextField(); textField_2.setBounds(413, 60, 170, 24); contentPane.add(textField_2); textField_2.setColumns(10);
textField_3 =new JTextField();
textField_3.setBounds(135, 105, 170, 24); contentPane.add(textField_3); textField_3.setColumns(10);
button_1 = new JButton(\"\添\加\"); button_1.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent arg0) {//添加
try{
String String String String
name = textField.getText(); price = textField_1.getText(); press = textField_2.getText(); author = textField_3.getText();
float bprice = Float.valueOf(price); Book
book = new
Book();
book.setName(name); book.setPress(press); book.setPrice(bprice); book.setAuthor(author); Function c = new Function(); Boolean f = c.Insert(book); if(f){
JOptionPane.showMessageDialog(null, \"添加成功\");
- 25 -
面向对象程序设计课程设计报告
});
button_1.setBounds(14, 142, 113, 27); contentPane.add(button_1);
}
}
catch(Exception }
e){
} else{ }
JOptionPane.showMessageDialog(null, \"添加失败\"); textField.setText(\"\"); textField_1.setText(\"\"); textField_2.setText(\"\"); textField_3.setText(\"\"); textField_4.setText(\"\"); textField.setText(\"\"); textField_1.setText(\"\"); textField_2.setText(\"\"); textField_3.setText(\"\"); textField_4.setText(\"\");
JOptionPane.showMessageDialog(null, \"请正确的信息\"); textField.setText(\"\"); textField_1.setText(\"\"); textField_2.setText(\"\"); textField_3.setText(\"\"); textField_4.setText(\"\");
- 26 -
面向对象程序设计课程设计报告
button_2.setBounds(141, 142, 113, 27); contentPane.add(button_2);
button_2 = new JButton(\"\删\除\"); button_2.addActionListener(new ActionListener() { });
public void actionPerformed(ActionEvent arg0) {//删除 }
String
id = textField_4.getText();
Function c = new Function(); Boolean f = c.delete(id); if(f){ } else{ }
JOptionPane.showMessageDialog(null, \"删除失败\"); textField.setText(\"\"); textField_1.setText(\"\"); textField_2.setText(\"\"); textField_3.setText(\"\"); textField_4.setText(\"\");
JOptionPane.showMessageDialog(null, \"删除成功\"); textField.setText(\"\"); textField_1.setText(\"\"); textField_2.setText(\"\"); textField_3.setText(\"\"); textField_4.setText(\"\");
- 27 -
面向对象程序设计课程设计报告
button_3 = new JButton(\"\修\改\"); button_3.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent arg0) {//修改
String String String String Book try{
float bprice = Float.valueOf(price); book.setName(name); book.setPrice(bprice); book.setPress(press); book.setAuthor(author); Function c = new Function();
Boolean f = c.update(book,name,bprice,press,author); if(f){ } else{
JOptionPane.showMessageDialog(null,\"修改失败\"); textField.setText(\"\");
JOptionPane.showMessageDialog(null,\"修改成功\"); textField.setText(\"\"); textField_1.setText(\"\"); textField_2.setText(\"\"); textField_3.setText(\"\"); textField_4.setText(\"\"); name = textField.getText(); price = textField_1.getText(); press = textField_2.getText(); author = textField_3.getText(); book = new
Book();
- 28 -
面向对象程序设计课程设计报告
});
button_3.setBounds(268, 142, 113, 27); contentPane.add(button_3);
button_4 = new JButton(\"\模\糊\查\询\"); button_4.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent arg0) {//模糊查询
Function c = new Function();
ResultSet rs = c.Selectauthor(textField_3.getText()); try{
if(rs.last()){
int a = rs.getRow();
Object[][] date = new Object[a][];
int b = rs.getMetaData().getColumnCount(); rs.beforeFirst(); int i=0; while(rs.next()){
date[i] = new Object[b];
}
}
catch (Exception e) { }
JOptionPane.showMessageDialog(null, \"请输入正确的信息\"); }
textField_1.setText(\"\"); textField_2.setText(\"\"); textField_3.setText(\"\");
- 29 -
面向对象程序设计课程设计报告
});
button_4.setBounds(395, 142, 113, 27); contentPane.add(button_4);
textField_4 = new JTextField(); textField_4.setBounds(135, 13, 170, 24); contentPane.add(textField_4); textField_4.setColumns(10);
JLabel label_3 = new JLabel(\"\编\号\:\"); label_3.setBounds(74, 16, 51, 18); contentPane.add(label_3);
}
}
DefaultTableModel m = new DefaultTableModel(date,str); table.setModel(m);
for(int j=0;jdate[i][j]=rs.getObject(j+1);
}else{ }
JOptionPane.showMessageDialog(null, \"未找到该图书\");
}catch (SQLException e1) { }
table.setVisible(false); table.setVisible(true);
e1.printStackTrace();
- 30 -
面向对象程序设计课程设计报告
JButton button_5 = new JButton(\"\清\除\"); button_5.addActionListener(new ActionListener() { });
button_5.setBounds(339, 104, 113, 27); contentPane.add(button_5);
button_6 = new JButton(\"\精\准\查\询\"); button_6.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {//精确查询
Function c = new Function();
ResultSet rs = c.Selectidandname(textField_4.getText(),textField.getText()); try{
if(rs.last()){
int a = rs.getRow();
Object[][] date = new Object[a][];
int b = rs.getMetaData().getColumnCount(); rs.beforeFirst(); int i=0; while(rs.next()){
date[i] = new Object[b]; for(int j=0;jpublic void actionPerformed(ActionEvent e) {//清除 }
textField.setText(\"\"); textField_1.setText(\"\"); textField_2.setText(\"\"); textField_3.setText(\"\"); textField_4.setText(\"\");
- 31 -
面向对象程序设计课程设计报告
});
button_6.setBounds(522, 142, 113, 27); contentPane.add(button_6);
label_4 = new
}
}
DefaultTableModel m = new DefaultTableModel(date,str); table.setModel(m);
} i++;
date[i][j]=rs.getObject(j+1);
}else{ }
JOptionPane.showMessageDialog(null, \"未找到该图书\");
}catch (SQLException e1) { }
table.setVisible(false); table.setVisible(true);
e1.printStackTrace();
JLabel(\"\请\输\入\图\书\作\者\模\糊\查\询\,\输\入\":{"h":17.043,"w":714.533,"x":95.795,"y":903.598,"z":287},"ps":null,"t":"word7F16\号\、\图\书\名\精\确\查\询\。\"); }
}
label_4.setForeground(Color.RED); label_4.setBounds(10, 435, 635, 18); contentPane.add(label_4);
- 32 -
面向对象程序设计课程设计报告
四、方法类(Function.java) package System; import java.sql.*; import our.Book;
public class Function {
public ResultSet Select(){//显示全部 }
public ResultSet Selectauthor(String author){//查询id }
public ResultSet Selectidandname(String id,String name){//查询id和书名
DBConn dbc = new DBConn();
String sql = \"select * from book_message where id = '\"+id+\"' and name = '\"+name+\"'\"; ResultSet rs = dbc.getRs(sql); return rs;
DBConn dbc = new DBConn();
String sql = \"select * from book_message where author = '\"+author+\"'\"; ResultSet rs = dbc.getRs(sql); return rs;
DBConn dbc = new DBConn();
String sql=\"select * from book_message\"; ResultSet rs = dbc.getRs(sql); return rs;
- 33 -
面向对象程序设计课程设计报告
} public } public
Boolean Insert(Book book){//添加
DBConn();
Boolean delete(String id){//删除
DBConn();
id='\"+id+\"'\";
DBConn dbc = new String
sql = \"delete from book_message where
int rs = dbc.getN(sql); if(rs!=0){ } else{ }
return
false;
return
true;
DBConn dbc = new String
sql = \"insert into book_message(name,price,press,author)
values('\"+book.getName()+\"','\"+book.getPrice()+\"','\"+book.getPress()+\"','\"+book.getAuthor()+\"')\"; }
public Boolean update(Book book,String
name,float
price,String
press,String
author){//修改
int rs = dbc.getN(sql); if(rs!=0){ } else{ }
return
false;
return
true;
- 34 -
面向对象程序设计课程设计报告
DBConn dbc = new String
DBConn();
sql = \"update book_message set
name='\"+book.getName()+\"',price='\"+book.getPrice()+\"',press='\"+book.getPress()+\"',author='\"+book.getA
name='\"+name+\"'or
price='\"+price+\"'or press='\"+press+\"'or author='\"+author+\"'\";
uthor()+\"' where // // // // // // }
}
int rs = dbc.getN(sql); if(rs!=0){ } else{ }
return
false;
return
true;
public ResultSet Output(){//导出到Excel }
DBConn dbc = new DBConn();
String sql=\"select * into outfile 'F:\\new' from book_message where 1 order by id desc limit 0,20;\"; ResultSet rs = dbc.getRs(sql); return rs;
- 35 -
面向对象程序设计课程设计报告
8.实训总结 此次只实训了短短的三周。虽说时间很短,但其中的每一天都使我收获很大、受益匪浅,它不但极大地加深了我对一些理论知识的理解,而且使我在理论上对Java有了全新的认识,在实践能力上也得到了提高,真正地做到了学以致用,更学到了很多做人的道理。这也是第一次让我亲身感受到理论与实际的相结合,让我大开眼界。也是对以前所学知识的一个初审吧!这次实训对于我以后学习、找工作也是受益匪浅的,在短短的三周中相信这些宝贵的经验会成为我今后成功的重要的基石;这对于我的学业,乃至我以后人生的影响无疑是极其深远的。实训是学习Java的重要环节,有利于我们巩固专业知识、掌握工作技能,提高就业筹码。通过这周的实训和学习,我知道了此次实训的目的,也清楚目前自己的不足,那就是缺乏相应的知识与经验,对所学的专业知识不能够很好地运用于实践操作。实训结束了感觉虽然辛苦,但很充实。我想这就是Java工程师的工作。我也体会到Java工程师成功地完成一个任务的那种兴奋,那种小有成就的感觉是只有置身其中的人才能体会。总之,这次实训为我提供了与众不同的学习方法和学习体会,从书本中面对现实,为我将来走上社会打下了扎实的基础。作为在校计算机科学与技术专业的学生,现在我能做的就是吸取知识,提高自身的综合素质,提高自己的职业技能,只有自己具备了能力,到时候才会是“车到山前必有路”。我相信在不久的未来,会有属于我自己的一片天空。我希望计算机专业的同学在以后的学习或工作中以务实的态度给提供更多的机会锻炼自己为大家的成才与就业奠定坚实的基础;并希望同学们要做好角色定位,将自己所学的知识,学熟、学精。多学习和收集与项目有关的资料,来提高自己的业务水平,同时多请教经验丰富的老师,使他们好的经验能够对自己起到借鉴作用,在他们的帮助下,能够很快的培养自己的职业技能,避免做无用功,也可以让自己了解很多项目管理上的方法,在以后的工作中减少挫折和错误。 成 绩 Score 教师签字 日期 - 36 -
因篇幅问题不能全部显示,请点此查看更多更全内容