基于java+mysql的swing+mysql进销存系统(java+gui)
私信源码获取及调试交流
运行环境
Java≥8、MySQL≥5.7
开发工具
eclipse/idea/myeclipse/sts等均可配置运行
适用
课程设计,大作业,毕业设计,项目练习,学习演示等
功能说明
基于java的Swing+MySQL进销存系统(java+gui)
功能介绍:
基本信息管理、库存管理、销售管理、订单管理、日志管理、供应商基本信息、员工基本信息、商品信息、入库管理、出库管理、剩余库存
button_1.setEnabled(false);
JButton button = new JButton("\u524D\u4E00\u5929");
button.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent arg0) {
day--;
int y=isleapyear(year);
if(day==0){
mounth--;
day=d[y][mounth-1];
}
if(mounth==0){
year--;
mounth=12;
}
now=year+"-"+mounth+"-"+day/10+day%10;
getchart(now);
button_1.setEnabled(true);
lblNewLabel_1.setText(now);
}
});
button.setBounds(225, 537, 93, 23);
add(button);
}
public int isleapyear(int y){
if((y%4==0&&y%100!=0)||y%400==0)return 1;
return 0;
}
int money;
public void getchart(String date){
if(panel!=null)remove(panel);
DefaultCategoryDataset dataset = new DefaultCategoryDataset();
try {
JOptionPane.showMessageDialog(Test.frame, "该用户已存在","错误",2);
}
else{
JOptionPane.showMessageDialog(Test.frame, a+"添加成功","用户添加成功",1);
String insert = "insert into user(name,password) values('"+a+"','"+b+"')";
s1.executeUpdate(insert);
}
s.close(); // 释放Statement对象
con.close(); // 关闭到MySQL服务器的连接
}
catch(SQLException sql_e) { // 都是SQLException
System.out.println(sql_e);
}
}
});
btnNewButton.setBounds(81, 187, 93, 23);
contentPane.add(btnNewButton);
JButton btnNewButton_1 = new JButton("\u91CD\u7F6E");
btnNewButton_1.setBounds(223, 187, 93, 23);
contentPane.add(btnNewButton_1);*/
}
}
}
});
button.setBounds(89, 138, 93, 23);
panel.add(button);
JLabel label_1 = new JLabel("\u4F9B\u5E94\u5546\u8054\u7CFB\u65B9\u5F0F\uFF1A");
label_1.setFont(new Font("宋体", Font.PLAIN, 15));
label_1.setBounds(19, 85, 120, 30);
panel.add(label_1);
table.addMouseListener(new MouseListener(){
@Override
public void mouseClicked(MouseEvent arg0) {
// TODO Auto-generated method stub
int selectedRow = table.getSelectedRow();//获得选中行的索引
if(selectedRow!= -1) //是否存在选中行
{
Object oa = tableModel.getValueAt(selectedRow, 0);
Object ob = tableModel.getValueAt(selectedRow, 1);
Object oc = tableModel.getValueAt(selectedRow, 2);
/* modify_comboBox_1.setText(oa.toString());
modify_comboBox_1*/
modify_comboBox_1.setSelectedItem(oa.toString());
modify_textField.setText(ob.toString());
modify_textField_1.setText(oc.toString());
}
else{
modify_textField_1.setText(""); //给文本框赋值
modify_textField.setText("");
}
}
private void setText(String string) {
// TODO Auto-generated method stub
}
@Override
public void mouseEntered(MouseEvent arg0) {
// TODO Auto-generated method stub
}
@Override
if(a.equals(rs.getString("name"))){flag=true;break;}
}
if(flag){
JOptionPane.showMessageDialog(Test.frame, "该用户已存在","错误",2);
}
else{
JOptionPane.showMessageDialog(Test.frame, a+"添加成功","用户添加成功",1);
String insert = "insert into user(name,password) values('"+a+"','"+b+"')";
s1.executeUpdate(insert);
}
s.close(); // 释放Statement对象
con.close(); // 关闭到MySQL服务器的连接
}
catch(SQLException sql_e) { // 都是SQLException
System.out.println(sql_e);
}
}
});
btnNewButton.setBounds(81, 187, 93, 23);
contentPane.add(btnNewButton);
JButton btnNewButton_1 = new JButton("\u91CD\u7F6E");
btnNewButton_1.setBounds(223, 187, 93, 23);
contentPane.add(btnNewButton_1);*/
}
}
label_2.setBounds(19, 52, 107, 30);
panel.add(label_2);
JComboBox add_comboBox = new JComboBox();
add_comboBox.setBounds(141, 27, 149, 21);
panel.add(add_comboBox);
add_textField = new JTextField();
add_textField.setBounds(141, 57, 149, 21);
panel.add(add_textField);
add_textField.setColumns(10);
add_textField_1 = new JTextField();
add_textField_1.setBounds(141, 90, 149, 21);
panel.add(add_textField_1);
add_textField_1.setColumns(10);
table = new JTable();
table.setBounds(0, 0, 438, 250);
JScrollPane scrollPane1=new JScrollPane();
String[] columnNames = { "供应商类别","供应商名称","供应商联系方式" };
columnNameV = new Vector<String>();
for (int column = 0; column < columnNames.length; column++) {
columnNameV.add(columnNames[column]);
}
JComboBox modify_comboBox_1 = new JComboBox();
modify_comboBox_1.setBounds(141, 27, 149, 21);
panel1.add(modify_comboBox_1);
modify_comboBox_1.setEditable(false);
modify_textField = new JTextField();
modify_textField.setBounds(141, 57, 149, 21);
panel1.add(modify_textField);
modify_textField.setColumns(10);
modify_textField_1 = new JTextField();
modify_textField_1.setBounds(141, 93, 149, 21);
panel1.add(modify_textField_1);
modify_textField_1.setColumns(10);
search_textField = new JTextField();
search_textField.setBounds(141, 27, 149, 21);
StartApplication.frame.setVisible(true);
StartApplication.zhu.dispose();
}
if(e.getSource()==Main.control){
Control frame=new Control();
frame.setVisible(true);
}
}
/*public void setpanel(JPanel p){
for(int i=0;i<panels.length;i++){
if(p.equals(panels[i]))continue;
panels[i].setVisible(false);
}
}*/
public void mouseReleased(MouseEvent e) {
// 处理鼠标释放
}
@Override
public void mouseClicked(MouseEvent e) {
// TODO Auto-generated method stub
}
}
}
}
}
}
});
button_2.setBounds(66, 321, 106, 27);
if(Login.limite.getSelectedItem().equals("管理员"))add(button_2);
JButton button1 = new JButton("\u786E\u5B9A");//修改
button1.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent arg0) {
// TODO Auto-generated method stub
int selectedRow = table.getSelectedRow();//获得选中行的索引
if(selectedRow!= -1) //是否存在选中行
{
//修改指定的值:
//tableModel.setValueAt(modify_comboBox_1.getSelectedItem().toString(),selectedRow,0);
String a=tableModel.getValueAt(selectedRow, 0).toString();
String b=tableModel.getValueAt(selectedRow, 1).toString();
String c=tableModel.getValueAt(selectedRow, 2).toString();
String d=tableModel.getValueAt(selectedRow, 3).toString();
String e=tableModel.getValueAt(selectedRow, 4).toString();
String f=tableModel.getValueAt(selectedRow, 5).toString();
String g=tableModel.getValueAt(selectedRow, 6).toString();
String h=tableModel.getValueAt(selectedRow, 7).toString();
tableModel.setValueAt(modify_name.getText(), selectedRow, 0);
tableModel.setValueAt(modify_position.getText(), selectedRow, 1);
tableModel.setValueAt(modify_sex.getText(), selectedRow, 2);
tableModel.setValueAt(modify_born.getText(), selectedRow, 3);
tableModel.setValueAt(modify_tel.getText(), selectedRow, 4);
tableModel.setValueAt(modify_school.getText(), selectedRow, 5);
tableModel.setValueAt(modify_time.getText(), selectedRow, 6);
tableModel.setValueAt(modify_addr.getText(), selectedRow, 7);
try {
Connection con = DriverManager.getConnection(conURL, StartApplication.mysqlname, StartApplication.mysqlpassword); // 连接数据库
Statement s = con.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE, ResultSet.CONCUR_UPDATABLE); // Statement类用来提交SQL语句
ResultSet rs = s.executeQuery("select name,position,sex,born,tel,school,time,addr from employee"); // 提交查询,返回的表格保存在rs中
while(rs.next()) { // ResultSet指针指向下一个“行”
System.out.println(""+rs.getString("name").equals(a)+rs.getString("position").equals(b)+rs.getString("sex").equals(c)+rs.getString("born").equals(d)+rs.getString("tel").equals(e)+rs.getString("school").equals(f)+rs.getString("time").equals(g)+rs.getString("addr").equals(h));
String insert1 = "insert into news(time,news,limite) values('"+df.format(new Date())+"','"+Testmysql.limite+Testmysql.Name+"删除商品"+oa.toString()+":"+ob.toString()+"成功"+"','"+Testmysql.limite+"')";
s2.executeUpdate(insert1);
s2.close(); // 释放Statement对象
}
s.close(); // 释放Statement对象
con.close(); // 关闭到MySQL服务器的连接
}
catch(SQLException sql_e) { // 都是SQLException
System.out.println(sql_e);
}
}
}
}
});
button_2.setBounds(83, 338, 106, 27);
add(button_2);
JButton btnNewButton_2 = new JButton("\u67E5\u8BE2");
btnNewButton_2.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent arg0) {
if(panel2.isVisible()==false)panel2.setVisible(true);
else panel2.setVisible(false);
panel1.setVisible(false);
panel.setVisible(false);
}
});
btnNewButton_2.setBounds(487, 338, 106, 27);
add(btnNewButton_2);
JButton btnNewButton_1 = new JButton("\u786E\u5B9A");//确定查询
btnNewButton_1.addActionListener(new ActionListener(){
@Override
public void actionPerformed(ActionEvent e) {
// TODO Auto-generated method stub
String a=search_textField1.getText();
String b=search_textField2.getText();
if(a.equals(""))a="any(select lei from goods)";
else a="'"+a+"'";
public class Login extends JFrame {
/**
*
*/
private static final long serialVersionUID = 1L;
private JPanel contentPane;
/**
* Launch the application.
*/
int windowwidth=850;
int windowheight=680;
public static JTextField yonghu;
}
});
JButton canel = new JButton("\u53D6\u6D88");
canel.setBounds(220, 138, 93, 23);
canel.addActionListener(new ActionListener(){
@Override
public void actionPerformed(ActionEvent arg0) {
// TODO Auto-generated method stub
search_textField.setText("");
search_textField_1.setText("");
search_textField_2.setText("");
int num=tableModel.getRowCount();
while(num--!=0){tableModel.removeRow(0);}
try {//插入
Connection con = DriverManager.getConnection(conURL, StartApplication.mysqlname, StartApplication.mysqlpassword); // 连接数据库
Statement s = con.createStatement(); // Statement类用来提交SQL语句
ResultSet rs = s.executeQuery("select * from sponsor"); // 提交查询,返回的表格保存在rs中
while(rs.next()) { // ResultSet指针指向下一个“行”
Vector<String> rowV = new Vector<String>();
rowV.add(rs.getString("lei"));
rowV.add(rs.getString("name"));
rowV.add(rs.getString("tel"));
tableValueV.add(rowV);
System.out.println(rs.getString("lei"));
}
tableModel.setDataVector(tableValueV,columnNameV);
int rowCount = table.getRowCount();
table.getSelectionModel().setSelectionInterval(rowCount-1 , rowCount- 1 );
Rectangle rect = table.getCellRect(rowCount-1 , 0 , true );
table.scrollRectToVisible(rect);
s.close(); // 释放Statement对象
con.close(); // 关闭到MySQL服务器的连接
TableColumnModel cm = table.getColumnModel();
TableColumn column = cm.getColumn(0);//得到第i个列对象
column.setPreferredWidth(140);//将此列的首选宽度设置为 preferredWidth。
TableColumn column1 = cm.getColumn(1);//得到第i个列对象
column1.setPreferredWidth(140);//将此列的首选宽度设置为 preferredWidth。
TableColumn column2 = cm.getColumn(2);
column2.setPreferredWidth(140);
}
catch(SQLException sql_e) { // 都是SQLExceptionss
System.out.println(sql_e);
}
}
});
JButton canel = new JButton("\u53D6\u6D88");
canel.setBounds(220, 138, 93, 23);
canel.addActionListener(new ActionListener(){
@Override
public void actionPerformed(ActionEvent arg0) {
// TODO Auto-generated method stub
search_textField.setText("");
search_textField_1.setText("");
search_textField_2.setText("");
int num=tableModel.getRowCount();
while(num--!=0){tableModel.removeRow(0);}
try {//插入
Connection con = DriverManager.getConnection(conURL, StartApplication.mysqlname, StartApplication.mysqlpassword); // 连接数据库
Statement s = con.createStatement(); // Statement类用来提交SQL语句
ResultSet rs = s.executeQuery("select * from sponsor"); // 提交查询,返回的表格保存在rs中
while(rs.next()) { // ResultSet指针指向下一个“行”
Vector<String> rowV = new Vector<String>();
rowV.add(rs.getString("lei"));
rowV.add(rs.getString("name"));
rowV.add(rs.getString("tel"));
tableValueV.add(rowV);
System.out.println(rs.getString("lei"));
}
tableModel.setDataVector(tableValueV,columnNameV);
int rowCount = table.getRowCount();
table.getSelectionModel().setSelectionInterval(rowCount-1 , rowCount- 1 );
Rectangle rect = table.getCellRect(rowCount-1 , 0 , true );
table.scrollRectToVisible(rect);
s.close(); // 释放Statement对象
con.close(); // 关闭到MySQL服务器的连接
TableColumnModel cm = table.getColumnModel();
TableColumn column = cm.getColumn(0);//得到第i个列对象
column.setPreferredWidth(140);//将此列的首选宽度设置为 preferredWidth。
TableColumn column1 = cm.getColumn(1);//得到第i个列对象
*/
public Login() {
setResizable(false);
setTitle("\u767B\u9646");
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setSize(windowwidth,windowheight);
setTitle("登陆");
int screenWidth = (int)Toolkit.getDefaultToolkit().getScreenSize().width;
int screenHeight = (int)Toolkit.getDefaultToolkit().getScreenSize().height;
setLocation((screenWidth-windowwidth)/2,(screenHeight-windowheight)/2);
contentPane = new JPanel();
contentPane.setBackground(Color.WHITE);
contentPane.setBorder(new EmptyBorder(5, 5, 5, 5));
setContentPane(contentPane);
contentPane.setLayout(null);
JPanel panel = new JPanel();
panel.setBackground(Color.BLACK);
panel.setBounds(0, 0, 834, 642);
contentPane.add(panel);
panel.setLayout(null);
JPanel panel_1 = new JPanel();
panel_1.setBackground(new Color(255, 255, 255));
panel_1.setBounds(217, 229, 454, 241);
panel.add(panel_1);
panel_1.setLayout(null);
limite = new JComboBox();
limite.setToolTipText("");
limite.setModel(new DefaultComboBoxModel(new String[] {"\u7BA1\u7406\u5458", "\u5458\u5DE5"}));
limite.setBounds(157, 22, 93, 29);
panel_1.add(limite);
JLabel label = new JLabel("\u7528\u6237\u540D\uFF1A");
label.setBounds(81, 71, 72, 21);
panel_1.add(label);
Object oc = tableModel.getValueAt(selectedRow, 2);
/* modify_comboBox_1.setText(oa.toString());
modify_comboBox_1*/
modify_comboBox_1.setSelectedItem(oa.toString());
modify_textField.setText(ob.toString());
modify_textField_1.setText(oc.toString());
}
else{
modify_textField_1.setText(""); //给文本框赋值
modify_textField.setText("");
}
}
private void setText(String string) {
// TODO Auto-generated method stub
}
@Override
public void mouseEntered(MouseEvent arg0) {
// TODO Auto-generated method stub
}
@Override
public void mouseExited(MouseEvent arg0) {
// TODO Auto-generated method stub
}
@Override
public void mousePressed(MouseEvent arg0) {
// TODO Auto-generated method stub
}
@Override
public void mouseReleased(MouseEvent arg0) {
// TODO Auto-generated method stub
}
});
JButton btnNewButton = new JButton("\u4FEE\u6539");//修改
if(!flag1){
Main.leiset.remove(oa.toString());
String delete1 = "Delete From fenlei Where lei='"+oa.toString()+"'";
s.executeUpdate(delete1);
comboBox.removeItem(oa.toString());
Statement s2 = con.createStatement(); // Statement类用来提交SQL语句
SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");//设置日期格式
//System.out.println("insert into news(time,news,limit) values('"+df.format(new Date())+"','"+Name+"登入系统"+"','"+limite+"')");
String insert1 = "insert into news(time,news,limite) values('"+df.format(new Date())+"','"+Testmysql.limite+Testmysql.Name+"删除商品"+oa.toString()+":"+ob.toString()+"成功"+"','"+Testmysql.limite+"')";
s2.executeUpdate(insert1);
s2.close(); // 释放Statement对象
}
s.close(); // 释放Statement对象
con.close(); // 关闭到MySQL服务器的连接
}
catch(SQLException sql_e) { // 都是SQLException
System.out.println(sql_e);
}
}
}
}
});
button_2.setBounds(83, 338, 106, 27);
add(button_2);
JButton btnNewButton_2 = new JButton("\u67E5\u8BE2");
btnNewButton_2.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent arg0) {
if(panel2.isVisible()==false)panel2.setVisible(true);
else panel2.setVisible(false);
panel1.setVisible(false);
panel.setVisible(false);
}
});
btnNewButton_2.setBounds(487, 338, 106, 27);
add(btnNewButton_2);
JButton btnNewButton_1 = new JButton("\u786E\u5B9A");//确定查询
panel_2.add(label_8, gbc_label_8);
time = new JTextField();
GridBagConstraints gbc_time = new GridBagConstraints();
gbc_time.fill = GridBagConstraints.HORIZONTAL;
gbc_time.insets = new Insets(0, 0, 5, 0);
gbc_time.gridx = 7;
gbc_time.gridy = 0;
panel_2.add(time, gbc_time);
time.setColumns(10);
JLabel label_6 = new JLabel("\u5355\u4EF7\uFF1A");
GridBagConstraints gbc_label_6 = new GridBagConstraints();
gbc_label_6.anchor = GridBagConstraints.EAST;
gbc_label_6.insets = new Insets(0, 0, 0, 5);
gbc_label_6.gridx = 0;
gbc_label_6.gridy = 1;
panel_2.add(label_6, gbc_label_6);
price = new JTextField();
GridBagConstraints gbc_price = new GridBagConstraints();
gbc_price.fill = GridBagConstraints.HORIZONTAL;
gbc_price.insets = new Insets(0, 0, 0, 5);
gbc_price.gridx = 1;
gbc_price.gridy = 1;
panel_2.add(price, gbc_price);
price.setColumns(10);
price1 = new JLabel("");
price1.setBounds(0,0,20,20);
price1.setToolTipText("new");
GridBagConstraints gbc_price1 = new GridBagConstraints();
gbc_price1.insets = new Insets(0, 0, 0, 5);
gbc_price1.gridx = 2;
gbc_price1.gridy = 1;
panel_2.add(price1, gbc_price1);
JLabel label_7 = new JLabel("\u6570\u91CF\uFF1A");
GridBagConstraints gbc_label_7 = new GridBagConstraints();
gbc_label_7.anchor = GridBagConstraints.EAST;
gbc_label_7.insets = new Insets(0, 0, 0, 5);
gbc_label_7.gridx = 3;
gbc_label_7.gridy = 1;
panel_2.add(label_7, gbc_label_7);
num = new JTextField();
GridBagConstraints gbc_num = new GridBagConstraints();
gbc_num.fill = GridBagConstraints.HORIZONTAL;
gbc_num.insets = new Insets(0, 0, 0, 5);
gbc_num.gridx = 4;
gbc_num.gridy = 1;
contentPane.add(lblNewLabel);
JLabel lblNewLabel_1 = new JLabel("\u5BC6\u7801\uFF1A");
lblNewLabel_1.setFont(new Font("宋体", Font.PLAIN, 15));
lblNewLabel_1.setBounds(91, 129, 54, 23);
contentPane.add(lblNewLabel_1);
name = new JTextField();
name.setBounds(156, 82, 152, 21);
contentPane.add(name);
name.setColumns(10);
password = new JTextField();
password.setBounds(155, 130, 152, 21);
contentPane.add(password);
password.setColumns(10);
JButton btnNewButton = new JButton("\u786E\u5B9A");
btnNewButton.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent arg0) {
String JDriver = "com.mysql.jdbc.Driver"; // MySQL提供的JDBC驱动,要保证它在CLASSPATH里可见
String conURL = "jdbc:mysql://localhost/Company"; // 本地计算机上的MySQL数据库Company的URL
String a=name.getText(),b=password.getText();
try {
Class.forName(JDriver);
}
catch(ClassNotFoundException cnf_e) { // 如果找不到驱动类
System.out.println("Driver Not Found: " + cnf_e);
}
boolean flag=false;
try {
Connection con = DriverManager.getConnection(conURL, "root", ""); // 连接数据库
Statement s = con.createStatement(); // Statement类用来提交SQL语句
Statement s1 = con.createStatement(); // Statement类用来提交SQL语句
ResultSet rs = s.executeQuery("select * from user"); // 提交查询,返回的表格保存在rs中
while(rs.next()) { // ResultSet指针指向下一个“行”
if(a.equals(rs.getString("name"))){flag=true;break;}
public class Mouselistener implements MouseListener {
JLabel jlabel;
//JPanel []panels ={Main.message_goods,Main.message_sponsor,Main.kucun_chuku,Main.kucun_sykucun,Main.xiaoshou_day,Main.xiaoshou_lirun,Main.xiaoshou_mounth,Main.xiaoshou_num,Main.dingdan_chuku,Main.dingdan_goumai};
public Mouselistener(JLabel e){
jlabel=e;
}
public void mouseEntered(MouseEvent e) {
// 处理鼠标移入
jlabel.setCursor(Cursor.getPredefinedCursor(Cursor.HAND_CURSOR));
jlabel.setForeground(new Color(0, 0, 255));
}
public void mouseExited(MouseEvent e) {
// 处理鼠标离开
jlabel.setForeground(new Color(0, 0, 0));
}
Statement s = con.createStatement(); // Statement类用来提交SQL语句
Statement s1 = con.createStatement(); // Statement类用来提交SQL语句
ResultSet rs = s.executeQuery("select * from ruku_mounth where time like '"+df.format(new Date())+"-"+(i/10==0?"0"+i:i)+"%'"); // 提交查询,返回的表格保存在rs中
ResultSet rs1 = s1.executeQuery("select * from xiaoshou_mounth where time like '"+df.format(new Date())+"-"+(i/10==0?"0"+i:i)+"%'");
int get=0,put=0,sum=0;
while(rs.next()) { // ResultSet指针指向下一个“行”
put+=Integer.parseInt(rs.getString("money"));
}
while(rs1.next()){
get+=Integer.parseInt(rs1.getString("money"));
}
dataset.addValue(get-put, "利润", i+"");
money_sum+=get-put;
s.close(); // 释放Statement对象
con.close(); // 关闭到MySQL服务器的连接
}
catch(SQLException sql_e) { // 都是SQLException
System.out.println("lirun"+sql_e);
}
}
JFreeChart chart = ChartFactory.createLineChart("食品公司年利润", // 主标题的名称
"",// X轴的标签
"金额(元)",// Y轴的标签
dataset, // 图标显示的数据集合
PlotOrientation.VERTICAL, // 图像的显示形式(水平或者垂直)
true,// 是否显示子标题
true,// 是否生成提示的标签
false); // 是否生成URL链接
// 处理图形上的乱码
// 处理主标题的乱码
chart.getTitle().setFont(new Font("宋体", Font.BOLD, 18));
// 处理子标题乱码
chart.getLegend().setItemFont(new Font("宋体", Font.BOLD, 15));
// 获取图表区域对象
CategoryPlot categoryPlot = (CategoryPlot) chart.getPlot();
// 获取X轴的对象
CategoryAxis categoryAxis = (CategoryAxis) categoryPlot.getDomainAxis();
// 获取Y轴的对象
NumberAxis numberAxis = (NumberAxis) categoryPlot.getRangeAxis();
// 处理X轴上的乱码