ImageVerifierCode 换一换
格式:DOC , 页数:29 ,大小:2.11MB ,
资源ID:2565561      下载积分:10 金币
验证码下载
登录下载
邮箱/手机:
图形码:
验证码: 获取验证码
温馨提示:
支付成功后,系统会自动生成账号(用户名为邮箱或者手机号,密码是验证码),方便下次登录下载和查询订单;
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

开通VIP
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.zixin.com.cn/docdown/2565561.html】到电脑端继续下载(重复下载【60天内】不扣币)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

开通VIP折扣优惠下载文档

            查看会员权益                  [ 下载后找不到文档?]

填表反馈(24小时):  下载求助     关注领币    退款申请

开具发票请登录PC端进行申请。


权利声明

1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前可先查看【教您几个在下载文档中可以更好的避免被坑】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时联系平台进行协调解决,联系【微信客服】、【QQ客服】,若有其他问题请点击或扫码反馈【服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【版权申诉】”,意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4009-655-100;投诉/维权电话:18658249818。

注意事项

本文(学生管理系统jsp实验报告.doc)为本站上传会员【天****】主动上传,咨信网仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知咨信网(发送邮件至1219186828@qq.com、拔打电话4009-655-100或【 微信客服】、【 QQ客服】),核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载【60天内】不扣币。 服务填表

学生管理系统jsp实验报告.doc

1、学生管理系统jsp实验报告 ———————————————————————————————— 作者: ———————————————————————————————— 日期: 2 个人收集整理 勿做商业用途 实践考核类课程(二)

2、实验报告 姓 名 张杨 学 号 20090725 班 级 软一0901 指 导 教 师 刘益先 实验名称 学生选课系统 开 设 学 期 2010 – 2011第二学期 评 定 成 绩 评定人签字 评 定 日 期 东北大学软件学院 2011年4月 25 1. 系统分析与设计 本次实验是是设计一个基于web平台的学生选课系统,主要用于实现学生选课,课程管理,与课程维护等等模块;需要使用的技术是Servlet、JSP、JDBC、DAO等关键技术。

3、 在本系统中,有三类用户:系统管理员,教师和学生。三种不同的用户所具有的操作权限以及操作内容均不一样。 本选课系统给予教师很大的自主权,系统管理员只负责向系统中添加学生和教师的个人信息。教师、学生可以录网站自行进行选课,排课.系统管理员设置一个选课范围,教师可以开设课程;学生可以登陆网站选择课程。 教师用户登陆网站后可以开设课程,为自己的课程编辑课程内容和课程信息。每门课程可以是必修或则选修,教师为每门课程设置一个学分,并可以在课程结束后给予成绩和分数,如果学生及格,学生将获得该课程的学分。 对于学生用户,每个学生除了必须选择必修课程外,学生可以对自己选课信息进行选择。系统可以根据学生的

4、选课信息,生成一份学生自己的课表。课程结束后学生可登录网站查询成绩. 1.2 系统功能流程 用户登录身份验证模块验证用户名和密码,并根据不同的用户类型,选择; 用户登录身份验证模块 登陆注册模块 录入信息模块 开设课程模块 查询个人信息模块 评分模块 查看课程模块 选课模块 数据库模块 数据库 访问模块 (1)登录与注销 每个用户都可

5、以用自己的帐号登录系统。用户操作完成后推出系统,注销后可以重新登录系统。 (2)修改密码 每个用户第一次登录都用默认密码。 (1) 系统管理员 管理员号 管理员 姓名 密码 用户类型 设置选课:系统管理员通过此项功能设置选课,只有在选课范围内,学生才可以选择课程,不得修改。 录入学生与教师个人信息:通过此项功能可以实现对教师和学生的个人信息添加删除。 (2) 教师用户 教师号 教师 姓名 密码 用户类型 性别 职称 显示和修改个人信息:教师用户登录系统后,可以查看和修改教师的个人信息,如姓名,电话,E—mail地址等。 开设课程:教师用户登

6、录系统后,可以开设课程,可以设置该课程可以设置该课程的最大人数。编辑课程上课时间:教师在开设了课程后,可以灵活地设置上课时间和地点. 给学生分数:课程结束后,教师用户登录系统,可以为学过课程的学生给予相应的成绩,若及格,给予学生学分。 (3) 学生用户 学 号 系 号 班 级 成 绩 政治 面貌 联系方式 就 读 中学 学生 性 别 籍 贯 姓 名 身份证号 交费情况 出生日 期 入学时间 简 历 民 族 专业号 用户类型 显示和修改个人信息:学生登录系统后,可以查看和修改学生的个人信息

7、如姓名,性别,电话等。 查看必修课程:学生登录后,可以查看所有的必修课程。查看该课程的信息,上课时间地点,开课教师信息等。 选择选修课程:学生登录系统后,在所有选修课程中可以选择至少两门选修课程。同时可以查看相关信息。 查看最终选课信息:学生登录系统后,可列出已选择的课程,若选课信息未被锁定,则可以退选,若所选课程少于两门,系统会提示选择的课程少于两门。 查看学分和成绩 课程结束后,学生登录系统可查看自己学习课程的成绩。 1.3 数据库设计 student,Teacher,Course,List,Admin,每个表与逻辑设计中一种的关系模式相对应。下面是每个数据表中的属性,包括

8、属性列的名称、数据类型、长度、是否可以为空和备注说明等内容。 (1) Student表.Student表用来存储学生的个人信息,使用学号作为主键,如表3—2: 表3—2 Student表 (2) Teacher表.Teacher表用来存储教师的个人信息,用学校分配给教师的教师编号作为主键,这样可以避免重复,如图3—3: 表3—3 Teacher表 (3) Course表.Course表用来存储课程信息,Course表以课程编号为主键,设置课程编号自动增加1(通过建表的时候对属性列设置“标识”,并设置“标识递增量”为1).表中开课教师Id为外键,所有“TId”的值必须是

9、Teacher表中的“TId”值。如表3—4: 表3—4 Course表 (4) List表。List表用来存放课程的上课时间和上课信息,包括课程编号。 表3—6 List表 (5) Admin表.Admin表用来存放系统管理员信息,如表3—9: 表3—9 Admin表 2系统实现与测试 1系统首页,点击进入选课系统登录页面 点击进入选课系统登录页面 2登陆页面 系统的登陆页面index。jsp在页面左边显示出三种身份登录的链接。便于不同用户清晰的看清登录的位置。不同身份的用户登录提交的用户名和密码提交到不同

10、身份的数据库认证页面中。如学生用户登录提交到login.jsp。当验证通过时,跳到学生用户的页面.并把信息保存进session,以供其他页面判断用户是否已经登录。 学生 用户通过欢迎界面进入登录界面,输入用户名以及密码,然后选择权限(学生/老师/管理员)进入自己的页面.该页面会对用户是否输入用户名或密码,输入是否正确进行检验,如果输入正确,则直接进入权限所对应的欢迎界面。否则,则提示用户名或密码错误。 输入学生学号,进入学生欢迎界面。 点击 查看已选课程,学生可以查看自己的已选课程。 点击注册课程选项,进入页面后选择相应课程后课程列表 结果如下: 选择注销

11、 计算机编程艺术 课程,同上.结果如下 管理员 选择管理员进入欢迎界面. 选择 删除课程 可以进行对相应课程的删除. 选择 管理课程,可以实现对于课程的管理。 选择 增加学生 可以实现对学生的添加。 选择 添加/删除老师,可以实现对老师的有效管理。 选择 查看所有学生/老师 可以查看到所有学生/老师的信息. 教师 以老师身份登录,界面如下。 选择查看已带课程,可以查看自己的所有课程。 选择给出成绩,可以成功的为学生给出成绩。 2。1系统采用的关键技术 在页面中用到了页面语言HTML,JavaScript以及JSP; 标记语言

12、使用的是:XML; 后台中使用了Servlet服务器, 数据库操作使用的是JDBC,DAO; 全局使用了MVC设计模式等,是在JDK+ MyEclipse+Tomcat+MySQL的开发环境中完成了这个学生选课系统。 2。2 关键程序流程 下面用视图的方式展示学生选课系统的流程! 基本表 视图 教师课表 班级课表 学生学籍表 学生选课表 课程表 选修课开课表 教师表 学院开课表 学生表 系部表 N N N N N 1 1 1 N N 1 1 N N 2。3 关键代码分析 下面将每个模块中好的部分以及重要的部分进行展示

13、 连接数据库模块: DataBaseFactory 类用于创建数据库连接,是一个连接数据库的工具类! package com。jinkun。data; import java.sql。*; public class DataBaseFactory { private Connection conn=null; public void DataBaseFactory() throws Exception{ } //得到一个statement public Statement getStatement() throws Exception{

14、 DriverManager.registerDriver(new org。gjt.mm.mysql。Driver()); Class.forName(”org.gjt.mm.mysql。Driver”).newInstance(); String url ="jdbc:mysql://localhost:3306/register?user=root&password=&useUnicode=true&characterEncoding=UTF-8”; conn= DriverManager。getConnection(url);

15、 return conn。createStatement(); } public ResultSet executeQuery(Statement stmt,String query) throws Exception{ ResultSet rs=stmt.executeQuery(query); return rs; } public boolean execute(Statement stmt,String query) throws Exception{ boolean rs=

16、stmt.execute(query); return rs; } public void executeUpdate(Statement stmt,String query) throws SQLException{ stmt.executeUpdate(query); } public void close() throws SQLException{ if(conn!=null) conn.close(); } } 学生模块: stu

17、dentDao在这个类中具体定义了学生的动能以及权限(包括:增加/删除学生,增加/删除某一门课程,以及显示全部的课程列表等等) public class StudentDao { private DataBaseFactory dataBase; public StudentDao() { dataBase=new DataBaseFactory(); } //注销学生的一门课程 public void cancelCoursed(String userid,String classid) throws SQLException, Exception {

18、 String query="delete from list where Cno=’”+classid+”'”; dataBase.executeUpdate(dataBase.getStatement(), query); dataBase。close(); } public Student getStudent(String stuno) throws Exception { Student student=null; String sqlStudent = ”select * from student where studentID='"+stu

19、no+"’"; ResultSet rs=(ResultSet) dataBase。executeQuery((Statement) dataBase.getStatement(), sqlStudent); if(rs。next()){ student=new Student(rs.getString(1),rs.getString(2),rs.getString(3)); } dataBase.close(); return student; } //增加一个学生 public void addStudent(Student stu

20、dent) throws SQLException, Exception{ String sqlStudent="insert into student values(’"+student。getID()+”’,'”+student。getName()+"’,” + ”'"+student。getPassword()+”’)"; dataBase.executeUpdate((Statement) dataBase。getStatement(), sqlStudent); dataBase.close(); } public List

21、getAllStudents() throws Exception{ List〈Student> students=new ArrayList(); String sqlStudent=”select * from student”; ResultSet rs=(ResultSet) dataBase.executeQuery((Statement) dataBase。getStatement(), sqlStudent); while(rs。next()){ String studentid=rs.getString(1); String st

22、udentName=rs。getString(2); String password=rs.getString(3); Student s=new Student(studentid,studentName,password); students。add(s); } dataBase。close(); return students; } public Course getCourse(String courseid) throws Exception { Course c=null; String sql

23、Student="select * from course where id='”+courseid+”'"; ResultSet rs=(ResultSet) dataBase。executeQuery((Statement) dataBase。getStatement(), sqlStudent); if(rs.next()){ String className=rs.getString(2); String teacherName=rs.getString(3); int counts=Integer.parseInt(rs。getStrin

24、g(5)); c=new Course(courseid,className,teacherName,counts); } rs。close(); dataBase.close(); return c; } //得到课程列表,用于显示某个学生注册的全部的课程 public List getCourses(Student student) throws Exception { List

26、turn signUpInfo; } //判断学生是否已经注册 public boolean isRegistered(String studentid,String courseid) throws Exception { String sqlStudent="select * from list where Sno=’"+studentid+”'”; ResultSet rs=(ResultSet) dataBase。executeQuery((Statement) dataBase.getStatement(),sqlStudent); while(r

27、s.next()){ String courid=rs。getString(3); if(courid.equals(courseid)) return true; } rs.close(); dataBase。close(); return false; } //用于注册一个学生 public boolean register(String studentid,String courseid,String teacherid) throws SQLException, Exception { String s

28、ql="select * from counts where id='1'"; ResultSet rs=dataBase.executeQuery(dataBase。getStatement(),sql); int i=0; if(rs.next())i=Integer。parseInt(rs。getString(2)); i++; sql=”update counts set idcounts='”+i+"' where id='1'”; dataBase。executeUpdate(dataBase。getStatement(),sql); St

29、ring sqlStudent="insert into list values(’"+i+"’,'”+studentid+"','”+courseid+"',’"+teacherid+"’,’"+"!!"+"’)”; dataBase。executeUpdate((Statement) dataBase。getStatement(), sqlStudent); dataBase.close(); return true; } } 老师模块: TeacherDao与studentDao是类似的;下面展示teacher的servlet dopost方法; pu

30、blic void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { request。setCharacterEncoding("gbk”); String type = request.getParameter(”submit"); if(type。equals("check”)){ String number1 = request.getParameter(”number”);

31、 request。setAttribute("number1”, number1); RequestDispatcher d=request.getRequestDispatcher("/teacher/teaching.jsp"); d。forward(request, response); } else if(type。equals(”reply")) { HttpSession s=request.getSession(); String teachernum=(String) s.getAttribute(”id”)

32、 TeacherDao t=new TeacherDao(); try{ Teacher tea=t。getTeacher(teachernum); try{ int limit = Integer.parseInt(request。getParameter(”limit”)); String coursename = request.getParameter(”coursename”); String coursenum = request.getParameter("coursenum”); t

33、ry{ CourseDao c1=new CourseDao(); System。out.print(teachernum); Course course=c1。getCourse(coursenum); if(course==null){ Course c = new Course(coursenum,coursename,tea.getName(),limit); CourseDao cdao=new CourseDao(); cdao.addCours

34、e(teachernum, c); doError(request,response,"已成功完成”); } else{ doError(request,response,"已有该门课程”); } } catch(Exception e){e。printStackTrace();} }catch(Exception e){doError(request,response,”非法字符输入”);} }catch(Exception e){doEr

35、ror(request,response,”后台出错”);} } else if(type。equals("verify")) { String studentnum = request。getParameter(”studentnum"); String coursenum=request.getParameter("classNo”); String grade = request。getParameter(”grade"); TeacherDao teach = new TeacherDao(); try { te

36、ach。grade(coursenum, studentnum, grade); } catch (Exception e) { // TODO Auto-generated catch block e.printStackTrace(); } System.out.println(”of"); } } public void doError(HttpServletRequest request, HttpServletResponse response,String msg) throws IOException {

37、 response.setContentType(”text/html"); response.setCharacterEncoding(”UTF—8"); PrintWriter out=response.getWriter(); out。print("〈meta http—equiv=’Content—Type’ content=’text/html'; charset=’utf-8'〉〈/meta>" + ”信息〈/title〉</head>〈body>"); out.print(msg); out.pr</p><p style='height:0px;padding:0;overflow:hidden'>38、int(”<a href='http://localhost:8080/Exercise/teacher/teacher。jsp’ method=’get'〉返回〈/a〉"); out.print(”</body>〈/html〉”); out.close(); return; } 课程模块: 管理员模块: public class ManageServlet extends HttpServlet { public void doGet(HttpServletRequest request, HttpServletResponse response) </p><p style='height:0px;padding:0;overflow:hidden'>39、 throws ServletException, IOException { String action=request.getParameter(”action”); if(action。equals("deleteCourse”)) this.doDeleteCourse(request, response); if(action。equals(”addStudent")) this.doAddStudent(request, response); if(action。equals("stuinfo”)) { RequestDis</p><p style='height:0px;padding:0;overflow:hidden'>40、patcher rs=request.getRequestDispatcher(”/admin/studentInfo.jsp"); rs。forward(request,response); } if(action。equals(”teacherInfo")) { RequestDispatcher rs=request.getRequestDispatcher(”/admin/teacherInfo.jsp”); rs。forward(request,response); } if(action。equals(”deleteTea</p><p style='height:0px;padding:0;overflow:hidden'>41、cher")) { doDeleteTeacher(request,response); } if(action.equals("addTeacher”)) { doAddTeacher(request,response); } if(action。equals(”logout”)) { HttpSession session=request.getSession(); session。invalidate(); response。sendRedirect("http://localhost:8080/Exerc</p><p style='height:0px;padding:0;overflow:hidden'>42、ise/login。jsp”) } } public void doAddTeacher(HttpServletRequest request,HttpServletResponse response) { String id=request。getParameter("teacherID"); String name=request.getParameter(”teacherName"); String password=request.getParameter(”password"); try{ int tid=Integer。parse</p><p style='height:0px;padding:0;overflow:hidden'>43、Int(id); TeacherDao tdao=new TeacherDao(); if(tdao.getTeacher(id)!=null) doError(request,response,"已存在该老师”,"addTeacher。jsp"); else{ Teacher a=new Teacher(id,name,password); try{ tdao。addTeacher(a); doError(request,response,"成功添加”,"addTeacher.jsp”); </p><p style='height:0px;padding:0;overflow:hidden'>44、}catch(Exception e) { // doError(request,response,"添加失败”); e.printStackTrace(); } } }catch(Exception e) { doError(request,response,”非法证件号码!","addTeacher.jsp"); } } public void doDeleteTeacher(HttpServletRequest request,HttpServletResponse response) </p><p style='height:0px;padding:0;overflow:hidden'>45、 { String id=request.getParameter(”id"); TeacherDao tdao=new TeacherDao(); try{ Teacher t=tdao。getTeacher(id); try{ tdao。deleteTeacher(t); doError(request,response,"成功删除”,"deleteTeacher。jsp”);} catch(Exception e) { doError(request,response,”操作出错 ,请重新再来",”deleteT</p><p style='height:0px;padding:0;overflow:hidden'>46、eacher。jsp"); } }catch(Exception e) { doError(request,response,"出错了",”deleteTeacher.jsp”); } } public void doAddStudent(HttpServletRequest request,HttpServletResponse response) { String id=request.getParameter(”studentID"); String studentName=request.getParameter("studen</p><p style='height:0px;padding:0;overflow:hidden'>47、tName"); String password=request。getParameter(”password"); try{ int stuid=Integer。parseInt(id); if(stuid〈2000||stuid〉20110000) { doError(request,response,”非法证件号码","addStudent。jsp”); }else{ StudentDao studao=new StudentDao(); if(studao。getStudent(id)!=null) </p><p style='height:0px;padding:0;overflow:hidden'>48、doError(request,response,"已存在该学生","addStudent.jsp"); else{ Student s=new Student(id,studentName,password); try{ studao.addStudent(s); doError(request,response,”成功添加",”addStudent。jsp"); }catch(Exception e) { doError(request,response,”添加失败”,"addStudent。j</p><p style='height:0px;padding:0;overflow:hidden'>49、sp"); } } } }catch(Exception e) { doError(request,response,"非法证件号码!","addStudent。jsp”); } } public void doDeleteCourse(HttpServletRequest request,HttpServletResponse response) { String courseid=request。getParameter(”id"); CourseDao coursedao=new CourseDa</p><p style='height:0px;padding:0;overflow:hidden'>50、o(); /* if(coursedao.deleteCourse(courseid)==true) doError(request,response,”删除成功”); else doError(request,response,"删除操作失败”);*/ try{ coursedao。deleteCourse(courseid); doError(request,response,"成功删除”,"deleteCourse。jsp"); }catch(Exception e) { //doError(request,respon</p> </div> </div> <span id="LabelScript"></span> <script src="https://m.zixin.com.cn/JS/bootstrap-collapse.js"></script> <div class="siteInner_bg" style="margin-top: 40px; border: solid 0px red; margin-left: 0px; margin-right: 0px;"> <div> <div style=" margin: auto; overflow:hidden; text-align: center;"> <script> var _hmt = _hmt || []; (function() { var hm = document.createElement("script"); hm.src = "https://hm.baidu.com/hm.js?6e2a21bc68316db308b5fdc9a0d11f2e"; var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(hm, s); })(); </script> </div> <div style=" height:80px; margin: auto; overflow:hidden; text-align: center;"> <a target="_blank" href='https://m.zixin.com.cn/ADMiddle.aspx?t=92ULKnFRa/o='> <img src="https://www.zixin.com.cn/FileUpload/Images/81dd1a0b-02e3-435a-aa37-fbfccae9a83d.gif" width="100%" height='80' alt="移动网页_全站_页脚广告1" /> </a> </div> </div> <div class="siteInner"> <p style="white-space: normal; text-align: center;"><a href="https://www.zixin.com.cn/h-33.html" target="_blank" title="关于我们" textvalue="关于我们"><span style="text-align: center;">关于我们</span></a> <span style="text-align: center;">     </span><a href="https://www.zixin.com.cn/h-37.html" target="_blank" title="便捷服务" textvalue="便捷服务">便捷服务</a>  <span style="text-align: center;">     </span><a href="https://ai.zixin.com.cn/" target="_blank" title="自信AI" textvalue="自信AI">自信AI</a> <span style="text-align: center;">      </span><a href="https://gpt.zixin.com.cn/" target="_blank" title="AI导航" textvalue="AI导航">AI导航</a>        <a href="https://www.zixin.com.cn/info/266.html" target="_blank" title="抽奖活动" textvalue="抽奖活动">抽奖活动</a></p><p style="white-space: normal; text-align: center;"><span style="color: rgb(153, 153, 153); font-family: 微软雅黑, 宋体, Arial; font-size: 12px; text-align: center; background-color: rgb(248, 248, 248);"></span><span style="text-align: center;">©2010-2025 宁波自信网络信息技术有限公司 </span><span style="text-align: center;"> </span><span style="text-align: center;">版权所有</span></p><p style="white-space: normal; text-align: center;"><span style="text-align: center;"><span style="text-align: center;"><span style="text-align: center;"><span style="text-align: center;">客服电话:4009-655-100  <span style="text-align: center;">投诉</span>/<span style="text-align: center;">维权</span>电话:18658249818</span></span></span></span></p><p style="white-space: normal; text-align: center;"><span style="text-align: center;"><img src="https://www.zixin.com.cn/FileUpload/ueditor_s/upload/2022-6/9/6379033271755225397249870.png" title="gongan.png" alt="gongan.png"/></span><a href="http://www.beian.gov.cn/portal/index.do" target="_blank" textvalue="浙公网安备33021202000488号">浙公网安备33021202000488号</a>   </p><p style="white-space: normal; text-align: center;"><img src="https://www.zixin.com.cn/FileUpload/ueditor_s/upload/2022-7/4/6379256265460890686562879.png" title="icp.png" alt="icp.png"/><a href="http://beian.miit.gov.cn/" target="_blank" textvalue="浙ICP备2021020529号-1">浙ICP备2021020529号-1</a> <span style="text-align: center;"> | </span> <a href="https://dxzhgl.miit.gov.cn/dxxzsp/xkz/xkzgl/resource/qiyesearch.jsp?num=%E5%AE%81%E6%B3%A2%E8%87%AA%E4%BF%A1%E7%BD%91%E7%BB%9C%E4%BF%A1%E6%81%AF%E6%8A%80%E6%9C%AF%E6%9C%89%E9%99%90%E5%85%AC%E5%8F%B8&type=xuke" target="_blank" title="浙B2-20240490" textvalue="浙B2-20240490">浙B2-20240490</a><span style="text-align: center;">  </span></p><p style="white-space: normal; text-align: left;"><span style="text-align: center; font-family: 楷体, 楷体_GB2312, SimKai; font-size: 20px;">关注我们</span><span style="text-align: center;"> :<a href="https://www.zixin.com.cn/news/113.html" target="_blank"><img src="https://www.zixin.com.cn/FileUpload/ueditor_s/upload/2022-7/9/6379298231429297878483475.png" title="微信公众号" alt="微信公众号"/></a></span><span style="text-align: center;">    <a href="https://www.zixin.com.cn/news/113.html" target="_blank"><img src="https://www.zixin.com.cn/FileUpload/ueditor_s/upload/2022-7/5/6379257739400583672497521.png" title="抖音" alt="抖音"/></a>    <a href="https://weibo.com/zixinnetwork" target="_blank" style="color: rgb(217, 83, 79); text-align: center; white-space: normal;"><img src="https://www.zixin.com.cn/FileUpload/ueditor_s/upload/2022-7/5/6379257739400583672497523.png" title="微博" alt="微博"/></a>    <a href="https://zixinnetwork.lofter.com/" target="_blank"><img src="https://www.zixin.com.cn/FileUpload/ueditor_s/upload/2022-7/5/6379257740834991205479163.png" title="LOFTER" alt="LOFTER"/></a> </span></p> </div> </div> <div style="position: fixed; bottom: 100px; right: 15px; z-index: 100000000000000000;"> <a href="https://work.weixin.qq.com/kfid/kfcb5dffb1386b26424"><img src="https://www.zixin.com.cn/FileUpload/Images/c1022425-c464-4203-b6dc-db237b2252d5.gif" style="width:36px" alt="客服"/></a> </div> <div class="trnav clearfix" id="navcontent" style="display: none; background-color:#3a71b1; "> <div class="trlogoside" id="navlogo" style="display: none;"> <a href="https://m.zixin.com.cn/" title="咨信网"><img src="https://www.zixin.com.cn/FileUpload/Images/c4280cd2-fe62-449e-aeca-027ef73439f5.png" alt="咨信网"></a> <div class="trnavclose" id="navclose"> <span></span> </div> </div> <div class="navcontainer"> <div class="row"> <ul class="nav navbar-nav trnavul headercontent" id="navigation" style="margin:20px 0 0px;"> <li><a target="_parent"href="https://m.zixin.com.cn/login.aspx">登录</a></li> <li><a target="_parent"href="https://m.zixin.com.cn/">首页 </a></li> <li><a target="_parent"href="https://m.zixin.com.cn/booklist-0.html">分类 </a></li> <li><a target="_parent"href="https://m.zixin.com.cn/infos.html">学堂 </a></li> <li><a target="_parent"href="https://m.zixin.com.cn/newslist.html">公告 </a></li> <li><a target="_parent"href="https://m.zixin.com.cn/h-0.html">帮助中心 </a></li> </ul> </div> </div> </div> <script type="text/javascript"> function stopPropagation(e) { var ev = e || window.event; if (ev.stopPropagation) { ev.stopPropagation(); } else if (window.event) { window.event.cancelBubble = true;//兼容IE } } $("#navmore").click(function (e) { $("#navcontent").show(); $("#navlogo").show(); stopPropagation(e); var navcontentwidth = $("#navcontent").width(); $('#navcontent').css({ 'right': '-' + navcontentwidth + 'px' }); $("#navcontent").show().animate({ "right": 0 }, 300); }); $(document).bind('click', function () { var navcontentwidth = $("#navcontent").width(); $("#navcontent").animate({ 'right': '-' + navcontentwidth + 'px' }, 300, function () { $("#navcontent").hide(); }); $("#navlogo").fadeOut(300); }); $("#navcontent").click(function (e) { stopPropagation(e); }); $("#navclose").click(function (e) { var navcontentwidth = $("#navcontent").width(); $("#navcontent").animate({ 'right': '-' + navcontentwidth + 'px' }, 300, function () { $("#navcontent").hide(); }); $("#navlogo").fadeOut(300); }); </script> <script> function BaseShare(title, desc, imgUrl) { var link = "https://m.zixin.com.cn/docdown/2565561.html"; if (wx) { wx.config({ debug: false, // 开启调试模式,调用的所有api的返回值会在客户端alert出来,若要查看传入的参数,可以在pc端打开,参数信息会通过log打出,仅在pc端时才会打印。 appId: 'wx49d3b0cb6fb382c4', // 必填,公众号的唯一标识 timestamp: '1748656961', // 必填,生成签名的时间戳 nonceStr: '45FBC6D3E05EBD93369CE542E8F2322D', // 必填,生成签名的随机串 signature: 'edb131758b684d136b97a1fcbd77a2fc1a0ed666',// 必填,签名,见附录1 jsApiList: ['onMenuShareAppMessage', 'onMenuShareTimeline', 'updateAppMessageShareData', 'updateTimelineShareData', 'hideMenuItems'] // 必填,需要使用的JS接口列表,所有JS接口列表见附录2 //openTagList: ["wx-open-launch-weapp"]//H5打开小程序 }); wx.ready(function () { //需在用户可能点击分享按钮前就先调用 wx.hideMenuItems({// 要隐藏的菜单项,只能隐藏“传播类”和“保护类”按钮,所有menu项见附录3 menuList: ['menuItem:share:qq', 'menuItem:favorite', 'menuItem:share:QZone', 'menuItem:share:email', 'menuItem:originPage', 'menuItem:readMode', 'menuItem:delete', 'menuItem:editTag', 'menuItem:share:facebook', 'menuItem:share:weiboApp', 'menuItem:share:brand'] }); var shareData = { title: title, // 分享标题 desc: desc,//这里请特别注意是要去除html link: link, // 分享链接,该链接域名或路径必须与当前页面对应的公众号JS安全域名一致 imgUrl: imgUrl, // 分享图标 }; wx.updateAppMessageShareData(shareData);//1.4 分享到朋友 wx.updateTimelineShareData(shareData);//1.4分享到朋友圈 }); } } function BaseShare(title, desc, imgUrl, link) { if (link=="") link = "https://m.zixin.com.cn/docdown/2565561.html"; if (wx) { wx.config({ debug: false, // 开启调试模式,调用的所有api的返回值会在客户端alert出来,若要查看传入的参数,可以在pc端打开,参数信息会通过log打出,仅在pc端时才会打印。 appId: 'wx49d3b0cb6fb382c4', // 必填,公众号的唯一标识 timestamp: '1748656961', // 必填,生成签名的时间戳 nonceStr: '45FBC6D3E05EBD93369CE542E8F2322D', // 必填,生成签名的随机串 signature: 'edb131758b684d136b97a1fcbd77a2fc1a0ed666',// 必填,签名,见附录1 jsApiList: ['onMenuShareAppMessage', 'onMenuShareTimeline', 'updateAppMessageShareData', 'updateTimelineShareData', 'hideMenuItems'] // 必填,需要使用的JS接口列表,所有JS接口列表见附录2 //openTagList: ["wx-open-launch-weapp"]//H5打开小程序 }); wx.ready(function () { //需在用户可能点击分享按钮前就先调用 wx.hideMenuItems({// 要隐藏的菜单项,只能隐藏“传播类”和“保护类”按钮,所有menu项见附录3 menuList: ['menuItem:share:qq', 'menuItem:favorite', 'menuItem:share:QZone', 'menuItem:share:email', 'menuItem:originPage', 'menuItem:readMode', 'menuItem:delete', 'menuItem:editTag', 'menuItem:share:facebook', 'menuItem:share:weiboApp', 'menuItem:share:brand'] }); var shareData = { title: title, // 分享标题 desc: desc,//这里请特别注意是要去除html link: link, // 分享链接,该链接域名或路径必须与当前页面对应的公众号JS安全域名一致 imgUrl: imgUrl, // 分享图标 }; wx.updateAppMessageShareData(shareData);//1.4 分享到朋友 wx.updateTimelineShareData(shareData);//1.4分享到朋友圈 }); } } </script> <!--footer--> <footer class="footer"> <a target="_parent" class="footer-item" href="https://m.zixin.com.cn/"> <img class="footer-item-img" src="/Master/img/tabbar/home.png" alt="首页" /> <div class="footer-item-txt ">首页</div> </a> <a target="_parent" class="footer-item" id="classify" href="https://m.zixin.com.cn/bookmap.html"> <img class="footer-item-img" src="/Master/img/tabbar/category.png" alt="分类" /> <div class="footer-item-txt ">分类</div> </a> <a target="_parent" class="footer-item" id="case" href="https://m.zixin.com.cn/zhuantilist-.html"> <img class="footer-item-img" src="/Master/img/tabbar/case.png" alt="专题" /> <div class="footer-item-txt ">专题</div> </a> <a target="_parent" class="footer-item" id="my" href="https://m.zixin.com.cn/UserDefault.aspx"> <img class="footer-item-img" src="/Master/img/tabbar/my.png" alt="我的" /> <div class="footer-item-txt ">我的</div> </a> </footer> <script> $(document).ready(function () { var arr = $(".headercontent"); for (var i = 0; i < arr.length; i++) { (function (index) { var url = "https://m.zixin.com.cn/header.aspx"; $.get(url + "?tp=0&t=" + (new Date()).valueOf(), function (d) { try { arr.eq(index).empty().html(d); } catch (e) { } try { arr.html(d); } catch (e) { } }); })(i); } }); </script> <script src="https://m.zixin.com.cn/js/jquery.lazyload.js"></script> <script charset="utf-8"> $("img.lazys").lazyload({ threshold: 200, effect: "fadeIn" }); </script> </body> </html>