`
zisefeiniao
  • 浏览: 171225 次
  • 性别: Icon_minigender_2
  • 来自: 成都
社区版块
存档分类
最新评论

hibernate映射 —— 多对多映射

阅读更多
   讲解完一对多映射之后,做了一个简单的项目,其实说简单也不算简单了,以前都是一天做一个模块,感觉还是挺轻松的,但是现在忽然一天要完成2~3个模块,就觉得吃力了,而且是第一次做Hibernate就更觉得吃力了,不过吃力归吃力这些都不是现在逃避问题的理由,就像李兴华老师经常说的,既然都来学习了,就不要把任何话作为借口,自己就一心拼命往前走,而且现在也已经快拼到头了,我觉得挺不错,慢慢忍,我会好的,在网上很多人对技术的理解不一样,但是我就是跟MLDN的思路走,那些整天嚷着的理论我在MLDN一个都没落,都学了,还说理论上,受不了这些人。



§3.3 Hibernate 的多对多关系映射


多对多关系,表的结构为:

两个实体表,还包含一个关系表,关系表为复合主键,如果要在Hibernate中使用多对多关系映射,则关系表必须只包含两个字段,在hibernate中如果生成了多对多关系映射,则中间关系表不会生成实体(即没有对应的pojo类,更没有其映射文件)。



1、建立表


DROP TABLE user_course ;



DROP TABLE user ;



DROP TABLE course ;



CREATE TABLE user (

    userid            varchar(20)              primary key ,

    name              varchar(20)              not null ,

    age               int                  not null ,

    birthday          date                 not null

);



CREATE TABLE course (

    id                int                  primary key auto_increment ,

    title             varchar(50)              not null,

    description          text                 not null,

    course_num        int                  not null

);



CREATE TABLE user_course (

    userid            varchar(20)              ,

    cid               int                  ,

    primary key (userid, cid ),

    foreign key (userid) references user (userid) on delete cascade ,

    foreign key (cid) references course (id) on delete cascade

);








2、生成映射
选择三个表一起生成映射

在选择主键生成方式的那一步需要注意:





然后每个表的主键生成方式,各自独立设置,即点击下一步再设置,对于中间表,不需要选择主键生成方式(参考复合主键映射)。



3、查看pojo类


生成好的pojo包含了多对多关系,而且没有生成中间关系表的映射。





package org.liky.pojo;



import java.util.Date;

import java.util.HashSet;

import java.util.Set;







public class User implements java.io.Serializable {



    // Fields



    private String userid;



    private String name;



    private Integer age;



    private Date birthday;



    private Set courses = new HashSet(0);



    // Constructors



  

    public User() {

    }



  

    public User(String userid, String name, Integer age, Date birthday) {

       this.userid = userid;

       this.name = name;

       this.age = age;

       this.birthday = birthday;

    }



  

    public User(String userid, String name, Integer age, Date birthday,

           Set courses) {

       this.userid = userid;

       this.name = name;

       this.age = age;

       this.birthday = birthday;

       this.courses = courses;

    }



    // Property accessors



    public String getUserid() {

       return this.userid;

    }



    public void setUserid(String userid) {

       this.userid = userid;

    }



    public String getName() {

       return this.name;

    }



    public void setName(String name) {

       this.name = name;

    }



    public Integer getAge() {

       return this.age;

    }



    public void setAge(Integer age) {

       this.age = age;

    }



    public Date getBirthday() {

       return this.birthday;

    }



    public void setBirthday(Date birthday) {

       this.birthday = birthday;

    }



    public Set getCourses() {

       return this.courses;

    }



    public void setCourses(Set courses) {

       this.courses = courses;

    }



}

package org.liky.pojo;



import java.util.HashSet;

import java.util.Set;







public class Course implements java.io.Serializable {



    // Fields



    private Integer id;



    private String title;



    private String description;



    private Integer courseNum;



    private Set users = new HashSet(0);



    // Constructors



  

    public Course() {

    }



  

    public Course(String title, String description, Integer courseNum) {

       this.title = title;

       this.description = description;

       this.courseNum = courseNum;

    }



  

    public Course(String title, String description, Integer courseNum, Set users) {

       this.title = title;

       this.description = description;

       this.courseNum = courseNum;

       this.users = users;

    }



    // Property accessors



    public Integer getId() {

       return this.id;

    }



    public void setId(Integer id) {

       this.id = id;

    }



    public String getTitle() {

       return this.title;

    }



    public void setTitle(String title) {

       this.title = title;

    }



    public String getDescription() {

       return this.description;

    }



    public void setDescription(String description) {

       this.description = description;

    }



    public Integer getCourseNum() {

       return this.courseNum;

    }



    public void setCourseNum(Integer courseNum) {

       this.courseNum = courseNum;

    }



    public Set getUsers() {

       return this.users;

    }



    public void setUsers(Set users) {

       this.users = users;

    }



}



















































































4、查看并修改映射文件
重点注意 inverse和cascade



<?xml version="1.0" encoding="utf-8"?>

<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN"

"http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">

<!--

    Mapping file autogenerated by MyEclipse Persistence Tools

-->

<hibernate-mapping>

    <class name="org.liky.pojo.User" table="user" catalog="testdb">

        <id name="userid" type="java.lang.String">

            <column name="userid" length="20" />

            <generator class="assigned"></generator>

        </id>

        <property name="name" type="java.lang.String">

            <column name="name" length="20" not-null="true" />

        </property>

        <property name="age" type="java.lang.Integer">

            <column name="age" not-null="true" />

        </property>

        <property name="birthday" type="java.util.Date">

            <column name="birthday" length="10" not-null="true" />

        </property>

        <!-- 与Course中的多对多关系配置相同,只是没有inverse=true的配置,表示由该类进行中间表操作。 -->

        <set name="courses" table="user_course" catalog="testdb">

            <key>

                <column name="userid" length="20" not-null="true" />

            </key>

            <many-to-many entity-name="org.liky.pojo.Course">

                <column name="cid" not-null="true" />

            </many-to-many>

        </set>

    </class>

</hibernate-mapping>



<?xml version="1.0" encoding="utf-8"?>

<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN"

"http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">

<!--

    Mapping file autogenerated by MyEclipse Persistence Tools

-->

<hibernate-mapping>

    <class name="org.liky.pojo.Course" table="course" catalog="testdb">

        <id name="id" type="java.lang.Integer">

            <column name="id" />

            <generator class="native"></generator>

        </id>

        <property name="title" type="java.lang.String">

            <column name="title" length="50" not-null="true" />

        </property>

        <property name="description" type="java.lang.String">

            <column name="description" length="65535" not-null="true" />

        </property>

        <property name="courseNum" type="java.lang.Integer">

            <column name="course_num" not-null="true" />

        </property>

        <!--

        inverse="true"表示关系交给对方进行控制。

        包含在Course类中表示关系由User类进行控制,也就是说,对User类进行操作时,会同时影响中间表的数据。

        这里说的操作为(session.save()/update()/delete())

      

        如果在这里加入了cascade,表示进行save()/update()/delete()操作时影响对方对象

        在这里就是User类,不要与inverse混淆

      

        table属性在这里表示两者关系维护的中间表

      

         -->

        <set name="users" inverse="true" table="user_course" catalog="testdb">

            <key>

              <!-- 表示中间表中的cid与当前Course中的主键值对应 -->

                <column name="cid" not-null="true" />

            </key>

            <!-- 多对多关系映射,表示与User类有该关系映射 -->

            <many-to-many entity-name="org.liky.pojo.User">

              <!--  User类中的主键值与中间表的userid有对应关系 -->

                <column name="userid" length="20" not-null="true" />

            </many-to-many>

        </set>

    </class>

</hibernate-mapping>








5、完成DAO代码


6、测试选课和插入功能


       UserDAO userdao = DAOFactory.getUserDAOInstance();

       CourseDAO coursedao = DAOFactory.getCourseDAOInstance();



       // 插入

       // User user = new User();

       // user.setUserid("Liky");

       // user.setName("MLDN");

       // user.setAge(21);

       // user.setBirthday(new Date());

       //

       // try {

       // userdao.doCreate(user);

       // } catch (Exception e) {

       // // TODO Auto-generated catch block

       // e.printStackTrace();

       // }

       //

       // Course c = new Course();

       // c.setTitle("Hibernate基础");

       // c.setDescription("框架基础(2)");

       // c.setCourseNum(20);

       //

       // try {

       // coursedao.doCreate(c);

       // } catch (Exception e) {

       // // TODO Auto-generated catch block

       // e.printStackTrace();

       //     }



       // 处理选课

        try {

           User user = userdao.findById("Liky");

           // 先删除中间表的数据

           user.setCourses(new HashSet());



           // 取得课程数组

           int[] cids = {1,2,3};

         

           // 处理关系

           for (int i = 0; i < cids.length;i++) {

              Course c = new Course();

              c.setId(cids[i]);

              user.getCourses().add(c);

           }

           // 调用修改方法

           userdao.doUpdate(user);

         



       } catch (Exception e) {

           // TODO Auto-generated catch block

           e.printStackTrace();

       }




插入数据时,不会使用cascade插入对方数据

选课需要使用user的update方法进行处理,注意先清空原有课程,再加入新课程。


分享到:
评论
1 楼 scwwc55555 2010-09-25  
     

相关推荐

    FastReport 模版打印如何实现

    FastReport 模版打印如何实现

    使用运算放大器模拟反相放大器的闭环电压增益simulink.rar

    1.版本:matlab2014/2019a/2024a 2.附赠案例数据可直接运行matlab程序。 3.代码特点:参数化编程、参数可方便更改、代码编程思路清晰、注释明细。 4.适用对象:计算机,电子信息工程、数学等专业的大学生课程设计、期末大作业和毕业设计。

    基于java的抗疫医疗用品销售平台设计与实现.docx

    基于java的抗疫医疗用品销售平台设计与实现.docx

    vue+SpringBoot749乡村日常政务管理系统的设计与实现java毕业设计源码含论文.rar

    jdk版本:jdk1.8+ 前端:vue.js+ElementUI 开发工具:IDEA 或者eclipse都支持 编程语言: java 框架支持:springboot 数据库: mysql 版本不限 数据库工具:Navicat/SQLyog都可以 详细技术:java+springboot+vue+MYSQL+MAVEN 前端采用的Vue框架,后端采用java语言,sprinboot框架,mybatis操作数据源,使用软件:idea,eclipse、MySQL。完成了用户登录管理等模块的设计与实现。完成了系统数据库的设计,并基于MySQL数据库管理系统

    java毕业设计源码ssm859基于SSM框架的线上DIY手工艺品综合平台+vue程序数据库含论文.rar

    前端采用的Vue框架,后端采用java语言,ssm框架,mybatis操作数据源,使用软件:idea,eclipse、MySQL。完成了用户登录管理等模块的设计与实现。完成了系统数据库的设计,并基于MySQL数据库管理系统 本系统基于SSM(Spring+SpringMVC+MyBatis)框架,适用于毕业设计, 基于B/S模式, mysql数据库,感兴趣的朋友们可以下载研究一下。 jdk版本:jdk1.8+ 前端:vue.js+ElementUI 开发工具:IDEA 或者eclipse都支持 编程语言: java 框架支持:ssm 数据库: mysql 版本不限 数据库工具:Navicat/SQLyog都可以 详细技术:java+ssm+vue+MYSQL+MAVEN

    java基于ssm+vue企业在线培训系统源码 带毕业论文

    【资源说明】 1、开发环境:ssm框架;内含Mysql数据库;VUE技术 2、项目代码都经过严格调试,代码没有任何bug!下载可以直接使用! 3、本项目适合作为计算机、数学、电子信息等专业的课程设计、期末大作业和毕设项目,作为参考资料学习借鉴。 4、本资源作为“参考资料”如果需要实现其他功能,需要能看懂代码,并且热爱钻研,自行调试。

    任务管理系统Web(Spring+Mybaties).zip(毕设&课设&实训&大作业&竞赛&项目)

    项目工程资源经过严格测试可直接运行成功且功能正常的情况才上传,可轻松复刻,拿到资料包后可轻松复现出一样的项目,本人系统开发经验充足(全领域),有任何使用问题欢迎随时与我联系,我会及时为您解惑,提供帮助。 【资源内容】:包含完整源码+工程文件+说明(如有)等。答辩评审平均分达到96分,放心下载使用!可轻松复现,设计报告也可借鉴此项目,该资源内项目代码都经过测试运行成功,功能ok的情况下才上传的。 【提供帮助】:有任何使用问题欢迎随时与我联系,我会及时解答解惑,提供帮助 【附带帮助】:若还需要相关开发工具、学习资料等,我会提供帮助,提供资料,鼓励学习进步 【项目价值】:可用在相关项目设计中,皆可应用在项目、毕业设计、课程设计、期末/期中/大作业、工程实训、大创等学科竞赛比赛、初期项目立项、学习/练手等方面,可借鉴此优质项目实现复刻,设计报告也可借鉴此项目,也可基于此项目来扩展开发出更多功能 下载后请首先打开README文件(如有),项目工程可直接复现复刻,如果基础还行,也可在此程序基础上进行修改,以实现其它功能。供开源学习/技术交流/学习参考,勿用于商业用途。质量优质,放心下载使用。

    这是一个基于mediapipe实现的运动计数项目;大三上期末小组作业;python。.zip

    项目工程资源经过严格测试可直接运行成功且功能正常的情况才上传,可轻松复刻,拿到资料包后可轻松复现出一样的项目,本人系统开发经验充足(全领域),有任何使用问题欢迎随时与我联系,我会及时为您解惑,提供帮助。 【资源内容】:包含完整源码+工程文件+说明(如有)等。答辩评审平均分达到96分,放心下载使用!可轻松复现,设计报告也可借鉴此项目,该资源内项目代码都经过测试运行成功,功能ok的情况下才上传的。 【提供帮助】:有任何使用问题欢迎随时与我联系,我会及时解答解惑,提供帮助 【附带帮助】:若还需要相关开发工具、学习资料等,我会提供帮助,提供资料,鼓励学习进步 【项目价值】:可用在相关项目设计中,皆可应用在项目、毕业设计、课程设计、期末/期中/大作业、工程实训、大创等学科竞赛比赛、初期项目立项、学习/练手等方面,可借鉴此优质项目实现复刻,设计报告也可借鉴此项目,也可基于此项目来扩展开发出更多功能 下载后请首先打开README文件(如有),项目工程可直接复现复刻,如果基础还行,也可在此程序基础上进行修改,以实现其它功能。供开源学习/技术交流/学习参考,勿用于商业用途。质量优质,放心下载使用。

    (全国物联网大赛一等奖,挑战杯铜奖)基于QT的人脸识别,定位导航,脑电心率测算,用GPRS传到服务端的疲劳驾驶检测系统(毕设&课

    项目工程资源经过严格测试可直接运行成功且功能正常的情况才上传,可轻松复刻,拿到资料包后可轻松复现出一样的项目,本人系统开发经验充足(全领域),有任何使用问题欢迎随时与我联系,我会及时为您解惑,提供帮助。 【资源内容】:包含完整源码+工程文件+说明(如有)等。答辩评审平均分达到96分,放心下载使用!可轻松复现,设计报告也可借鉴此项目,该资源内项目代码都经过测试运行成功,功能ok的情况下才上传的。 【提供帮助】:有任何使用问题欢迎随时与我联系,我会及时解答解惑,提供帮助 【附带帮助】:若还需要相关开发工具、学习资料等,我会提供帮助,提供资料,鼓励学习进步 【项目价值】:可用在相关项目设计中,皆可应用在项目、毕业设计、课程设计、期末/期中/大作业、工程实训、大创等学科竞赛比赛、初期项目立项、学习/练手等方面,可借鉴此优质项目实现复刻,设计报告也可借鉴此项目,也可基于此项目来扩展开发出更多功能 下载后请首先打开README文件(如有),项目工程可直接复现复刻,如果基础还行,也可在此程序基础上进行修改,以实现其它功能。供开源学习/技术交流/学习参考,勿用于商业用途。质量优质,放心下载使用。

    南开大学2023年前端开发实训大作业.zip(课设&实训&大作业&项目)

    项目工程资源经过严格测试可直接运行成功且功能正常的情况才上传,可轻松复刻,拿到资料包后可轻松复现出一样的项目,本人系统开发经验充足(全领域),有任何使用问题欢迎随时与我联系,我会及时为您解惑,提供帮助。 【资源内容】:包含完整源码+工程文件+说明(如有)等。答辩评审平均分达到96分,放心下载使用!可轻松复现,设计报告也可借鉴此项目,该资源内项目代码都经过测试运行成功,功能ok的情况下才上传的。 【提供帮助】:有任何使用问题欢迎随时与我联系,我会及时解答解惑,提供帮助 【附带帮助】:若还需要相关开发工具、学习资料等,我会提供帮助,提供资料,鼓励学习进步 【项目价值】:可用在相关项目设计中,皆可应用在项目、毕业设计、课程设计、期末/期中/大作业、工程实训、大创等学科竞赛比赛、初期项目立项、学习/练手等方面,可借鉴此优质项目实现复刻,设计报告也可借鉴此项目,也可基于此项目来扩展开发出更多功能 下载后请首先打开README文件(如有),项目工程可直接复现复刻,如果基础还行,也可在此程序基础上进行修改,以实现其它功能。供开源学习/技术交流/学习参考,勿用于商业用途。质量优质,放心下载使用。

    毕业设计 C-V2X漏洞挖掘 开放资源.zip(毕设&课设&实训&大作业&竞赛&项目)

    项目工程资源经过严格测试可直接运行成功且功能正常的情况才上传,可轻松复刻,拿到资料包后可轻松复现出一样的项目,本人系统开发经验充足(全领域),有任何使用问题欢迎随时与我联系,我会及时为您解惑,提供帮助。 【资源内容】:包含完整源码+工程文件+说明(如有)等。答辩评审平均分达到96分,放心下载使用!可轻松复现,设计报告也可借鉴此项目,该资源内项目代码都经过测试运行成功,功能ok的情况下才上传的。 【提供帮助】:有任何使用问题欢迎随时与我联系,我会及时解答解惑,提供帮助 【附带帮助】:若还需要相关开发工具、学习资料等,我会提供帮助,提供资料,鼓励学习进步 【项目价值】:可用在相关项目设计中,皆可应用在项目、毕业设计、课程设计、期末/期中/大作业、工程实训、大创等学科竞赛比赛、初期项目立项、学习/练手等方面,可借鉴此优质项目实现复刻,设计报告也可借鉴此项目,也可基于此项目来扩展开发出更多功能 下载后请首先打开README文件(如有),项目工程可直接复现复刻,如果基础还行,也可在此程序基础上进行修改,以实现其它功能。供开源学习/技术交流/学习参考,勿用于商业用途。质量优质,放心下载使用。

    基于 Java+SqlServer 实现的学生学籍管理系统毕业设计(源代码+论文+开题报告+外文翻译+答辩PPT)

    【作品名称】:基于 Java+SqlServer 实现的学生学籍管理系统【毕业设计】(源代码+论文+开题报告+外文翻译+答辩PPT) 【适用人群】:适用于希望学习不同技术领域的小白或进阶学习者。可作为毕设项目、课程设计、大作业、工程实训或初期项目立项。 【项目介绍】:本系统是用JSP开发工具实现的,主要完成对学籍的管理,包括添加、修改、删除,查询,以及用户管理等五个方面。系统可以完成对各类信息的浏览、查询、添加、删除、修改等功能。系统的核心是添加、修改和删除三者之间的联系,每一个表的修改都将联动的影响其它的表,当完成添加或删除操作时系统会自动地完成学籍的修改。查询功能也是系统的核心之一,在系统中主要根据学生学号和课程号进行查询,其目的都是为了方便用户使用。系统也有完整的用户添加、删除和密码修改功能。 本系统功能主要划分学生操作管理、管理员操作管理这2大模块。其中学生操作模块包括学籍维护、选课管理、成绩查询、修改密码这几个小模块。管理员操作包括后台学生信息管理、选修课程信息管理、基础课程信息管理、成绩这几个小模块。 在本系统中使用的是SQL Server2000数据库

    本项目属于机器学习的简单部分,基于为了快速理解机器学习而搭建的人工智能速成项目(毕设&课设&实训&大作业&竞赛&项目)

    本项目属于机器学习的简单部分,基于为了快速理解机器学习而搭建的人工智能速成项目,大家可以根据其中的项目时间进行相关的学习.zip项目工程资源经过严格测试可直接运行成功且功能正常的情况才上传,可轻松复刻,拿到资料包后可轻松复现出一样的项目,本人系统开发经验充足(全领域),有任何使用问题欢迎随时与我联系,我会及时为您解惑,提供帮助。 【资源内容】:包含完整源码+工程文件+说明(如有)等。答辩评审平均分达到96分,放心下载使用!可轻松复现,设计报告也可借鉴此项目,该资源内项目代码都经过测试运行成功,功能ok的情况下才上传的。 【提供帮助】:有任何使用问题欢迎随时与我联系,我会及时解答解惑,提供帮助 【附带帮助】:若还需要相关开发工具、学习资料等,我会提供帮助,提供资料,鼓励学习进步 【项目价值】:可用在相关项目设计中,皆可应用在项目、毕业设计、课程设计、期末/期中/大作业、工程实训、大创等学科竞赛比赛、初期项目立项、学习/练手等方面,可借鉴此优质项目实现复刻,设计报告也可借鉴此项目,也可基于此项目来扩展开发出更多功能 下载后请首先打开README文件(如有),项目工程可直接复现复刻,如果基础还行,也可在此程序基础上进行修改,以实现其它功能。供开源学习/技术交流/学习参考,勿用于商业用途。质量优质,放心下载使用。

    2022年研一高级机器学习课程设计.zip(课设&实训&大作业&项目)

    项目工程资源经过严格测试可直接运行成功且功能正常的情况才上传,可轻松复刻,拿到资料包后可轻松复现出一样的项目,本人系统开发经验充足(全领域),有任何使用问题欢迎随时与我联系,我会及时为您解惑,提供帮助。 【资源内容】:包含完整源码+工程文件+说明(如有)等。答辩评审平均分达到96分,放心下载使用!可轻松复现,设计报告也可借鉴此项目,该资源内项目代码都经过测试运行成功,功能ok的情况下才上传的。 【提供帮助】:有任何使用问题欢迎随时与我联系,我会及时解答解惑,提供帮助 【附带帮助】:若还需要相关开发工具、学习资料等,我会提供帮助,提供资料,鼓励学习进步 【项目价值】:可用在相关项目设计中,皆可应用在项目、毕业设计、课程设计、期末/期中/大作业、工程实训、大创等学科竞赛比赛、初期项目立项、学习/练手等方面,可借鉴此优质项目实现复刻,设计报告也可借鉴此项目,也可基于此项目来扩展开发出更多功能 下载后请首先打开README文件(如有),项目工程可直接复现复刻,如果基础还行,也可在此程序基础上进行修改,以实现其它功能。供开源学习/技术交流/学习参考,勿用于商业用途。质量优质,放心下载使用。

    java-ssm947基于JSP的贝儿宠物店管理系统的设计与实现+jsp程序源码数据库含论文.rar

    本系统基于SSM(Spring+SpringMVC+MyBatis)框架,适用于毕业设计, 基于B/S模式, mysql数据库,感兴趣的朋友们可以下载研究一下。 后端采用java语言,ssm框架,mybatis操作数据源,使用软件:idea,eclipse、MySQL。完成了用户登录管理等模块的设计与实现。完成了系统数据库的设计,并基于MySQL数据库管理系统 jdk版本:jdk1.8+ 前端:jsp 开发工具:IDEA 或者eclipse都支持 编程语言: java 框架支持:ssm 数据库: mysql 版本不限 数据库工具:Navicat/SQLyog都可以 详细技术:java+ssm+jsp+MYSQL+MAVEN

    vue+SpringBoot421露营地管理系统设计与实现java毕业设计源码含论文.rar

    jdk版本:jdk1.8+ 前端:vue.js+ElementUI 开发工具:IDEA 或者eclipse都支持 编程语言: java 框架支持:springboot 数据库: mysql 版本不限 数据库工具:Navicat/SQLyog都可以 详细技术:java+springboot+vue+MYSQL+MAVEN 前端采用的Vue框架,后端采用java语言,sprinboot框架,mybatis操作数据源,使用软件:idea,eclipse、MySQL。完成了用户登录管理等模块的设计与实现。完成了系统数据库的设计,并基于MySQL数据库管理系统

    基于java的小型药店管理系统设计与实现.docx

    基于java的小型药店管理系统设计与实现.docx

    基于java的人事管理系统设计与实现.docx

    基于java的人事管理系统设计与实现.docx

    技术栈Spring MVC+ Mybatis+Spring + Jsp+ Tomcat , 是Java Web入门非常好项目

    项目工程资源经过严格测试可直接运行成功且功能正常的情况才上传,可轻松复刻,拿到资料包后可轻松复现出一样的项目,本人系统开发经验充足(全领域),有任何使用问题欢迎随时与我联系,我会及时为您解惑,提供帮助。 【资源内容】:包含完整源码+工程文件+说明(如有)等。答辩评审平均分达到96分,放心下载使用!可轻松复现,设计报告也可借鉴此项目,该资源内项目代码都经过测试运行成功,功能ok的情况下才上传的。 【提供帮助】:有任何使用问题欢迎随时与我联系,我会及时解答解惑,提供帮助 【附带帮助】:若还需要相关开发工具、学习资料等,我会提供帮助,提供资料,鼓励学习进步 【项目价值】:可用在相关项目设计中,皆可应用在项目、毕业设计、课程设计、期末/期中/大作业、工程实训、大创等学科竞赛比赛、初期项目立项、学习/练手等方面,可借鉴此优质项目实现复刻,设计报告也可借鉴此项目,也可基于此项目来扩展开发出更多功能 下载后请首先打开README文件(如有),项目工程可直接复现复刻,如果基础还行,也可在此程序基础上进行修改,以实现其它功能。供开源学习/技术交流/学习参考,勿用于商业用途。质量优质,放心下载使用。

    simulink 电力系统之变压器空投合闸,励磁涌流分析.rar

    1.版本:matlab2014/2019a/2024a 2.附赠案例数据可直接运行matlab程序。 3.代码特点:参数化编程、参数可方便更改、代码编程思路清晰、注释明细。 4.适用对象:计算机,电子信息工程、数学等专业的大学生课程设计、期末大作业和毕业设计。

Global site tag (gtag.js) - Google Analytics