JAVA面向对象程序设计学生个人信息标准管理系统.doc
《JAVA面向对象程序设计学生个人信息标准管理系统.doc》由会员分享,可在线阅读,更多相关《JAVA面向对象程序设计学生个人信息标准管理系统.doc(32页珍藏版)》请在咨信网上搜索。
软 件 学 院 课程设计汇报书 课程名称 面向对象程序设计 设计题目 学生个人信息管理系统 专业班级 嵌入式软件09-2 学 号 090214 姓 名 王翀 指导老师 年 6 月 目录 1 设计时间 4 2 设计目标 4 3设计任务 4 4 设计内容 4 4.1需求分析 4 4.1.1问题描述 4 4.1.2基础要求 4 4.2总体设计 5 4.2.1包描述 7 4.2.2类描述 8 4.2.3类之间关系 9 类MainTest继承JFrame。 9 类jenter实现接口ActionListener。 9 4.3 具体设计 9 4.3.1类图 13 4.3.2页面设计 13 4.4 测试和分析 13 4.5 程序代码 15 5 总结和展望 30 参考文件 31 课程设计成绩评定 32 1 设计时间 6月13日——6月19日 2 设计目标 《面向对象程序设计》是一门实践性很强计算机专业基础课程,课程设计是学习完该课程后进行一次较全方面综合练习。其目标在于经过实践加深学生对面向对象程序设计理论、方法和基础知识了解,掌握使用Java语言进行面向对象设计基础方法,提升利用面向对象知识分析实际问题、处理实际问题能力,提升学生应用能力 3设计任务 设计一个简单学生个人信息管理系统,该系统含有录入,查询,修改三项基础功效。要求以下: (1)含有简单录入,查询和修改功效。 (2)修改学生信息必需输入学号,然后对姓名、性别和专业等进行修改; (3)使用文件存放数据。(也可用数据库) (4)学生个人信息必需包含:学号、姓名、性别、出生日期、身份证号、专业、班级自我介绍,其它可自行丰富。 4 设计内容 4.1需求分析 学生管理系统需要对学生基础信息进行简单录入,查询,修改三项基础功效。具体实现使用Access数据库实现基础操作,前台窗口使用GUI编程创建图形界面,对图形界面窗口和按钮进行事件监听,实施对应SQL语句。 4.1.1问题描述 设计一个简单学生个人信息管理系统,该系统含有录入,查询,修改三项基础功效。 4.1.2基础要求 (1) 含有简单录入,查询和修改功效。 (2) 修改学生信息必需输入学号,然后对姓名、性别和专业等进行修改; (3) 使用文件存放数据。 (4) 学生个人信息必需包含:学号、姓名、性别、出生日期、身份证号、专业、班级自我介绍,其它可自行丰富。 (5) 含有对姓名,出生日期和身份证号进行简单效验功效。 4.2总体设计 1、 自定义类说明: (1)类名:MainTest 作用:主类,构建主界面 继承父类:Jframe 关键实现接口:ActionListener 关键组员变量: private JPanel ContentPane; private JButton Insert = new JButton(); private JButton Select = new JButton(); private JButton Update = new JButton(); 内部类:MainTest_actionPerformed,主页面事件监听。 jenter_ actionPerformed,按钮事件监听。 关键组员方法: public MainTest() public static void main(String[] args) (2)类名:Insert 作用:实现添加个人信息 继承父类:Jframe 关键实现接口:ActionListener 关键组员变量: private JPanel ContentPane; private JLabel jlab1 = new JLabel(); private JLabel jlab2 = new JLabel(); private JLabel jlab3 = new JLabel(); private JLabel jlab4 = new JLabel(); private JLabel jlab5 = new JLabel(); private JLabel jlab6= new JLabel(); private JLabel jlab7 = new JLabel(); private JLabel jlab8 = new JLabel(); private JTextField jtextfield1 = new JTextField(); private JTextField jtextfield2 = new JTextField(); private JTextField jtextfield3 = new JTextField(); private JTextField jtextfield4 = new JTextField(); private JTextField jtextfield5 = new JTextField(); private JComboBox jcombobox1 = new JComboBox(); private JComboBox jcombobox2 = new JComboBox(); private JTextArea jtextarea = new JTextArea(); private JButton sure = new JButton(); 内部类:sure_actionperformed,按钮事件监听,实现对数据插入。 关键组员方法:public Insert(); (3)类名:Update 作用:对个人信息进行修改。 继承父类:Jframe 关键实现接口:ActionListener 关键组员变量: private JPanel ContentPane; private JLabel jlab1 = new JLabel(); private JLabel jlab2 = new JLabel(); private JLabel jlab3 = new JLabel(); private JLabel jlab4 = new JLabel(); private JLabel jlab5 = new JLabel(); private JTextField jtextfield1 = new JTextField(); private JTextField jtextfield2 = new JTextField(); private JTextField jtextfield3 = new JTextField(); private JTextField jtextfield4 = new JTextField(); private JButton sure = new JButton(); private JButton upda = new JButton(); 关键组员方法: public Update() public void actionPerformed(ActionEvent e) (4)类名:Select 作用:查询学生个人信息 继承父类:Jframe 关键实现接口:ActionListener 关键组员变量: private JTextArea taInfo=new JTextArea(); private JPanel panel=new JPanel(); private JTextField jtextfield1=new JTextField(); private JButton jbutton=new JButton("查询"); private JLabel jlabel=new JLabel("学号"); 关键组员方法: public Select() public void actionPerformed(ActionEvent e) 2、主程序步骤: 学生个人信息管理系统 查询 更新 录入 显示学生信息 更新学生信息 添加学生信息 图 4-2-1 主步骤图 4.2.1包描述 import java.awt.BorderLayout;边界布局勾画出一个容器,其组成部分安排和调整以适应在五个区域:北,南,东,西,和中心。 import java.awt.Color;颜色类是用于封装在默认成色彩空间颜色或颜色任意颜色空间所确定色彩。 import java.awt.Rectangle;一个矩形指定地域在坐标空间是封闭矩形对象左上点(十,年)在空间中坐标,其宽度和高度。 import java.awt.event.ActionEvent;事件一个接口,知道怎样调度自己。 import java.awt.event.ActionListener;监听器接口接收动作事件。类感爱好事件处理行动实现此接口对象,并创建类是一个注册组件,使用组件addactionlistener方法。行动时,事件发生时,该对象actionperformed调用方法。 import javax.swing.JButton;实施“推”按钮。请参阅The Java Tutorial中信息和使用按钮例子怎样使用按钮,复选框和单选按钮。 import javax.swing.JComboBox;实施 - 一个复选框能够选择或取消项目,并显示其状态用户。根据通例,任何一组号码复选框能够选择。请参阅怎样使用Java教程使用复选框例子和信息按钮,复选框和单选按钮。 import javax.swing.JFrame;java.awt.Frame扩展版本,增加了JFC / Swing组件架构支持。你能够找到相关节怎样使框架,使用Java教程JFrame面向任务文档。 import javax.swing.JLabel;一个很短文本字符串或图像显示区域,或二者兼而有之。一个标签不输入事件作出反应。所以,它不能取得键盘焦点。然而,标签能够显示周围一个组成部分,有一个键盘替换品,但不能显示它方便键盘替换。 import javax.swing.JPanel;JPanel是一个通用轻量级容器。对于JPanel任务为导向文档和例子,请参阅怎样使用面板,Java教程一个部分。 import javax.swing.JTextArea;一个JTextArea是一个多行区域,显示纯文本。它目标是成为一个轻量级组件,提供和java.awt.TextArea类源代码兼容性,它能够合理地这么做。你能够找到在The Java Tutorial中使用文本组件,部分使用全部文本组件信息和例子。 import javax.swing.JTextField;JTextField是一个轻量级组件,它许可在一个单行文本编辑。对于使用文本字段信息和例子,请参阅怎样使用Java教程文本字段。 4.2.2类描述 JButton:实施“推”按钮。请参阅The Java Tutorial中信息和使用按钮例子怎样使用按钮,复选框和单选按钮。 JLabel:一个很短文本字符串或图像显示区域,或二者兼而有之。一个标签不输入事件作出反应。所以,它不能取得键盘焦点。然而,标签能够显示周围一个组成部分,有一个键盘替换品,但不能显示它方便键盘替换。 JTextField:是一个轻量级组件,它许可在一个单行文本编辑。对于使用文本字段信息和例子,请参阅怎样使用Java教程文本字段。 JComboBox:相结合一个按钮或可编辑字段和一个下拉列表组件。用户能够选择从下拉列表中,出现在用户请求值。假如您编辑组合框,组合框包含一个可编辑字段到,用户能够键入一个值。 Connection:和特定数据库连接(会话)。实施SQL语句和内连接情况下返回结果。 Statement:一个Statement对象代表一个原始语句在一个单一方法应用到一个目标,一组参数 - “a.setFoo(二)”。 ResultSet:一个代表,它通常经过实施查询数据库语句生成一个数据库结果集数据表。 包。 4.2.3类之间关系 类MainTest继承JFrame。 类jenter实现接口ActionListener。 类MainText实现接口ActionListener。 类Insert继承JFrame。 类Select继承JFrame实现接口ActionListener。 类Update继承JFrame实现接口ActionListener。 4.3 具体设计 1、各方法实现: 和数据库连接: Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); String url="jdbc:odbc:学生管理"; Connection con=DriverManager.getConnection(url); Statement stmt=con.createStatement(); MainTest类中对按钮事件监听实现: class MainTest_actionPerformed implements ActionListener { MainTest adapte ; MainTest_actionPerformed(MainTest adapte) { this.adapte = adapte; } public void actionPerformed(ActionEvent e) { /*调用窗口程序*/ if(e.getSource()==adapte.Insert) { Insert insert = new Insert(); } else if(e.getSource()==adapte.Update) { Update update = new Update(); } else if(e.getSource()==adapte.Select) { Select select = new Select(); } } } Insert类中添加个人信息具体实现: public void actionPerformed(ActionEvent e) { String SQL="insert into student(学号,姓名,性别,生日,身份证号,专业,班级,介绍) values('"+jtextfield1.getText()+"','"+jtextfield2.getText()+"', '"+jcombobox1.getSelectedItem()+"','"+jtextfield3.getText()+"', '"+jtextfield5.getText()+"','"+jcombobox2.getSelectedItem()+"', '"+jtextfield4.getText()+"','"+jtextarea.getText()+"')"; ResultSet rs=stmt.executeQuery(SQL); } } Update类中相关更新学生信息方法实现: if(e.getSource()==upda) { String SQL="UPDATE student SET 姓名='"+jtextfield2.getText()+"', 性别='"+jtextfield3.getText()+"', 专业='"+jtextfield4.getText()+"' WHERE 学号='"+jtextfield1.getText()+"'"; ResultSet rs=stmt.executeQuery(SQL); rs.close(); stmt.close(); con.close(); } Select类中对查询个人信息实现: public void actionPerformed(ActionEvent e) { String SQL="SELECT * FROM student WHERE 学号='"+jtextfield1.getText()+"'"; ResultSet rs=stmt.executeQuery(SQL); while(rs.next()) { taInfo.setText(rs.getString("学号")+"\n"); taInfo.append(rs.getString("姓名")+"\n"); taInfo.append(rs.getString("性别")+"\n"); taInfo.append(rs.getString("生日")+"\n"); taInfo.append(rs.getString("身份证号")+"\n"); taInfo.append(rs.getString("专业")+"\n"); taInfo.append(rs.getString("班级")+"\n"); taInfo.append(rs.getString("介绍")+"\n"); } } 2、数据库表设计: 使用Access数据库 Student表: 字段名 类型 是否可为空 学号 文本 否 姓名 文本 否 性别 文本 否 生日 日期/时间 否 身份证号 文本 否 专业 文本 否 班级 文本 否 介绍 文本 否 4.3.1类图 JFrame MainTest Select UpDate Insert ActionListener jenter Select Update MainTest 类继承 接口实现 图 4-3-1 类关系图 4.3.2页面设计 添加学生信息 学生管理系统 修改学生信息 查询学生信息 图 4-3-2 主页面设计图 4.4 测试和分析 4.5 程序代码 //:object/MainTest.java import java.awt.*; import java.awt.event.*; import javax.swing.*; /** * @author LiuMingyan */ public class MainTest extends JFrame{ /**************申明变量************/ private JPanel ContentPane; private JButton Insert = new JButton(); private JButton Select = new JButton(); private JButton Update = new JButton(); public MainTest() { ContentPane = (JPanel)this.getContentPane(); ContentPane.setLayout(null); this.setTitle("学生管理系统"); this.setBounds(100,200,500,300); ContentPane.setBackground(Color.WHITE); /*********3个按钮设置********/ Insert.setText("添加学生信息"); Insert.setVisible(false); Insert.setBounds(new Rectangle(70, 50, 120, 33)); Insert.addActionListener(new MainTest_actionPerformed(this));//加事件监听 Insert.setForeground(Color.white); Insert.setBackground(Color.black); Update.setText("修改学生信息"); Update.setVisible(false); Update.setBounds(new Rectangle(210, 50,120, 33)); Update.addActionListener(new MainTest_actionPerformed(this));//加事件监听 Update.setForeground(Color.white); Update.setBackground(Color.black); Select.setText("查询学生信息"); Select.setVisible(false); Select.setBounds(new Rectangle(340, 50, 120, 33)); Select.addActionListener(new MainTest_actionPerformed(this));//加事件监听 Select.setForeground(Color.white); Select.setBackground(Color.black); /*******把控件添加到面板中去*******/ ContentPane.add(Insert); ContentPane.add(Update); ContentPane.add(Select); this.setVisible(true); Insert.setVisible(true); Update.setVisible(true); Select.setVisible(true); } /**********设置动作按钮监听事件***********/ class jenter_actionPerformed implements ActionListener { public void actionPerformed(ActionEvent e) { //设置3个按钮可见性 Insert.setVisible(true); Update.setVisible(true); Select.setVisible(true); } } /***********主窗口监听事件**************************/ class MainTest_actionPerformed implements ActionListener { MainTest adapte ; MainTest_actionPerformed(MainTest adapte) { this.adapte = adapte; } public void actionPerformed(ActionEvent e) { /*调用窗口程序*/ if(e.getSource()==adapte.Insert) { Insert insert = new Insert(); } else if(e.getSource()==adapte.Update) { Update update = new Update(); } else if(e.getSource()==adapte.Select) { Select select = new Select(); } } } public static void main(String[] args) { MainTest maintest=new MainTest (); // TODO 自动生成方法存根 } } //: object/Insert.java import javax.swing.*; import java.awt.*; import java.awt.event.*; import java.sql.*; /** * @author LiuMingyan */ public class Insert extends JFrame { /**************申明变量************/ private JPanel ContentPane; private JLabel jlab1 = new JLabel(); private JLabel jlab2 = new JLabel(); private JLabel jlab3 = new JLabel(); private JLabel jlab4 = new JLabel(); private JLabel jlab5 = new JLabel(); private JLabel jlab6= new JLabel(); private JLabel jlab7 = new JLabel(); private JLabel jlab8 = new JLabel(); private JTextField jtextfield1 = new JTextField(); private JTextField jtextfield2 = new JTextField(); private JTextField jtextfield3 = new JTextField(); private JTextField jtextfield4 = new JTextField(); private JTextField jtextfield5 = new JTextField(); private JComboBox jcombobox1 = new JComboBox(); private JComboBox jcombobox2 = new JComboBox(); private JTextArea jtextarea = new JTextArea(); private JButton sure = new JButton(); public Insert() { this.setBounds(320,160,450,450); this.setTitle("添加学生信息");//窗体标题 ContentPane =(JPanel)this.getContentPane();//将容器转化为JPanel ContentPane.setLayout(null);//设置可更改性 ContentPane.setBackground(Color.black); jlab1.setText("学号"); jlab1.setBounds(new Rectangle(30, 11, 51, 33)); jlab1.setForeground(Color.white); jlab2.setText("姓名"); jlab2.setBounds(new Rectangle(162, 11, 28, 33)); jlab2.setForeground(Color.white); jlab3.setText("性别"); jlab3.setBounds(new Rectangle(241, 11, 28, 33)); jlab3.setForeground(Color.white); jlab4.setText("出生日期"); jlab4.setBounds(new Rectangle(31, 53, 55, 33)); jlab4.setForeground(Color.white); jlab5.setText("身份证号"); jlab5.setBounds(new Rectangle(163, 94, 55, 33)); jlab5.setForeground(Color.white); jlab6.setText("班级"); jlab6.setBounds(new Rectangle(163, 53, 26, 33)); jlab6.setForeground(Color.white); jlab7.setText("专业"); jlab7.setBounds(new Rectangle(30, 94, 50, 33)); jlab7.setForeground(Color.white); jlab8.setText("自我介绍"); jlab8.setBounds(new Rectangle(30, 120, 66, 33)); jlab8.setForeground(Color.white); jtextfield1.setText("");//学号 jtextfield1.setBounds(new Rectangle(86, 16, 74, 22)); jtextfield2.setText("");//姓名 jtextfield2.setBounds(new Rectangle(192, 16, 44, 22)); jtextfield3.setText("");//出生日期 jtextfield3.setBounds(new Rectangle(86, 58, 74, 22)); jtextfield4.setText("");//班级 jtextfield4.setBounds(new Rectangle(191, 58, 44, 22)); jtextfield5.setText("");//身份证号 jtextfield5.setBounds(new Rectangle(230, 98, 158, 22)); jcombobox1.setBounds(new Rectangle(275, 15, 50, 25)); jcombobox1.addItem("男"); jcombobox1.addItem("女"); jcombobox1.setForeground(Color.black); jcombobox1.setBackground(Color.white); jcombobox2.setBounds(new Rectangle(86, 98, 75, 25)); jcombobox2.addItem("软件"); jcombobox2.addItem("工商"); jcombobox2.addItem("电信"); jcombobox2.addItem("电控"); jcombobox2.addItem("营销"); jcombobox2.addItem("安全"); jcombobox2.setForeground(Color.black); jcombobox2.setBackground(Color.white); jtextarea.setText(""); jtextarea.setBounds(new Rectangle(84, 139, 285, 92)); sure.setText("添加");//设置命令按钮 sure.setBounds(new Rectangle(156, 244, 89, 22)); sure.addActionListener(new sure_actionperformed());//设置动作监听 ContentPane.add(jlab1); ContentPane.add(jlab2); ContentPane.add(jlab3); ContentPane.add(jlab4); ContentPane.add(jlab5); ContentPane.add(jlab6); ContentPane.add(jlab7); ContentPane.add(jlab8); ContentPane.add(jtextfield1); ContentPane.add(jtextfield2); ContentPane.add(jtextfield3); ContentPane.add(jtextfield4); ContentPane.add(jtextfield5); ContentPane.add(jcombobox1); ContentPane.add(jcombobox2); ContentPane.add(jtextarea); ContentPane.add(sure); this.setVisible(true);//设置可见性 } class sure_actionperformed implement- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- JAVA 面向 对象 程序设计 学生 个人信息 标准 管理 系统
咨信网温馨提示:
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【精***】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【精***】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【精***】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【精***】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。
关于本文