- ฉันได้สร้างฐานข้อมูลและชิ้นส่วนด้านหลังและเปลี่ยนแปลงและปรับปรุงในโครงการด้านหน้าของตรรกะทางธุรกิจเพื่อให้สามารถปรับให้เข้ากับฐานข้อมูลของฉันได้มากขึ้น
- โครงการได้รับการปรับใช้กับระบบคลาวด์: ระบบการเลือกนักเรียน
- ครั้งแรกที่ฉันใช้ Vue-Cli เพื่อพัฒนาโครงการ
- หากรายการนี้เป็นประโยชน์กับคุณโปรด สั่งซื้อดาวเล็ก ๆ สำหรับโครงการนี้และ ให้ความสนใจกับผู้แต่ง
Spring+SpringMvc+MyBatis+MyBatis-plus (SSM)
ฤดูใบไม้ผลิเป็นเฟรมเวิร์กโอเพ่นซอร์สที่สร้างขึ้นเพื่อแก้ปัญหาความซับซ้อนของการพัฒนาแอปพลิเคชันระดับองค์กร หนึ่งในข้อได้เปรียบหลักของเฟรมเวิร์กคือสถาปัตยกรรมแบบเลเยอร์ ฤดูใบไม้ผลิใช้ Javabean ขั้นพื้นฐานเพื่อทำสิ่งต่าง ๆ ที่เสร็จสมบูรณ์ก่อนหน้านี้โดย EJB อย่างไรก็ตามวัตถุประสงค์ของสปริงไม่ได้ จำกัด อยู่ที่การพัฒนาฝั่งเซิร์ฟเวอร์ จากมุมมองของความเรียบง่ายความสามารถในการทดสอบและการมีเพศสัมพันธ์แบบหลวมแอปพลิเคชัน Java ใด ๆ จะได้รับประโยชน์จากฤดูใบไม้ผลิ แกนกลางของสปริงคือการควบคุมการกลับรายการ (IOC) และหันหน้าไปทางพื้นผิว (AOP) กล่าวง่ายๆว่าสปริงเป็น Javase/EE แบบหนึ่ง -หนึ่ง -สต็อปเฟรมเวิร์กโอเพ่นซอร์สน้ำหนักเบา
SpringMVC เป็นโมดูลของ Framework Spring ชั้นบริการ
MyBatis เป็นเฟรมเวิร์กยาวที่ยอดเยี่ยมที่รองรับ SQL แบบกำหนดเองขั้นตอนการจัดเก็บและการทำแผนที่ขั้นสูง MyBatis ยกเว้นรหัส JDBC เกือบทั้งหมดและพารามิเตอร์การตั้งค่าและรับผลลัพธ์ MyBatis สามารถกำหนดค่าและ mappore ประเภทดั้งเดิมอินเตอร์เฟสและ Java pojo (วัตถุ Java เก่าธรรมดา, วัตถุ Java เก่าที่ล้าสมัยทั่วไป) ในบันทึกฐานข้อมูลในฐานข้อมูล MyBatis-Plus (MP) เป็น เครื่องมือที่ได้รับการปรับปรุง สำหรับ MyBatis
Entity+Data Access Layer (DAO)+Business Logic Layer (Service)+Layer ควบคุม (คอนโทรลเลอร์)
ความเข้าใจที่คร่าวๆคือการห่อหุ้ม DAO อย่างน้อยหนึ่งครั้งและห่อหุ้มไว้ในบริการ
ที่นี่ส่วนต่อประสานทางธุรกิจของ ผู้ดูแล หลักสูตรหลักสูตร ครู และ นักเรียน เขียนตามความต้องการและธุรกิจเฉพาะถูกนำไปใช้ในชั้นเรียนการดำเนินธุรกิจตามชั้น DAO ด้านบน
<? xml version = " 1.0 " encoding = " UTF-8 " ?>
< beans xmlns = " http://www.springframework.org/schema/beans "
xmlns : context = " http://www.springframework.org/schema/context "
xmlns : aop = " http://www.springframework.org/schema/aop "
xmlns : tx = " http://www.springframework.org/schema/tx "
xmlns : xsi = " http://www.w3.org/2001/XMLSchema-instance "
xsi : schemaLocation = "
http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans.xsd
http://www.springframework.org/schema/context
http://www.springframework.org/schema/context/spring-context.xsd
http://www.springframework.org/schema/aop
http://www.springframework.org/schema/aop/spring-aop.xsd
http://www.springframework.org/schema/tx
http://www.springframework.org/schema/tx/spring-tx.xsd " >
<!-- IoC注解解析器 -->
< context : component-scan base-package = " com.gendml " />
<!-- DI注解解析器 -->
< context : annotation-config />
<!-- 加载数据库配置信息 -->
< context : property-placeholder location = " classpath:config/druid.properties " system-properties-mode = " NEVER " />
<!-- 连接池对象 -->
< bean id = " dataSource " class = " com.alibaba.druid.pool.DruidDataSource "
init-method = " init " destroy-method = " close " >
< property name = " driverClassName " value = " ${driverClassName} " />
< property name = " username " value = " ${username} " />
< property name = " password " value = " ${password} " />
< property name = " url " value = " ${url} " />
< property name = " initialSize " value = " ${initialSize} " />
< property name = " minIdle " value = " ${minIdle} " />
< property name = " maxActive " value = " ${maxActive} " />
<!--配置获取连接等待超时的时间-->
< property name = " maxWait " value = " ${maxWait} " />
<!--配置间隔多久才进行一次检测,检测需要关闭的空闲连接,单位是毫秒-->
< property name = " timeBetweenEvictionRunsMillis " value = " ${timeBetweenEvictionRunsMillis} " />
<!--配置一个连接在池中最小生存的时间,单位是毫秒-->
< property name = " minEvictableIdleTimeMillis " value = " ${timeBetweenEvictionRunsMillis} " />
</ bean >
<!--配置sqlSessionFactory -->
< bean id = " sqlSessionFactory "
class = " com.baomidou.mybatisplus.extension.spring.MybatisSqlSessionFactoryBean " >
< property name = " dataSource " ref = " dataSource " />
<!-- 加载xxMapper.xml -->
< property name = " mapperLocations " >
< array >
< value >classpath:mapper/*Mapper.xml</ value >
</ array >
</ property >
<!-- 配置分页插件 -->
< property name = " plugins " >
< array >
<!--传入分页拦截器-->
< bean class = " com.baomidou.mybatisplus.extension.plugins.MybatisPlusInterceptor " >
< property name = " interceptors " ref = " paginationInnerInterceptor " />
</ bean >
</ array >
</ property >
</ bean >
<!--分页拦截器-->
< bean id = " paginationInnerInterceptor " class = " com.baomidou.mybatisplus.extension.plugins.inner.PaginationInnerInterceptor " >
< property name = " dbType " value = " MYSQL " />
</ bean >
<!-- Mapper接口代理扫描器-->
< bean class = " org.mybatis.spring.mapper.MapperScannerConfigurer " >
<!-- 需要生成代理类对象的mapper接口包 -->
< property name = " basePackage " value = " com.gendml.mapper " />
<!-- sqlSessionFactory 的name 用于为代理类中生成SqlSession -->
< property name = " sqlSessionFactoryBeanName " value = " sqlSessionFactory " />
</ bean >
<!-- MP 全局配置 -->
< bean id = " globalConfig " class = " com.baomidou.mybatisplus.core.config.GlobalConfig " >
<!-- 全局的主键策略 -->
< property name = " dbConfig " ref = " dbConfig " />
</ bean >
< bean id = " dbConfig " class = " com.baomidou.mybatisplus.core.config.GlobalConfig.DbConfig " >
<!--映射数据库下划线字段名到数据库实体类的驼峰命名的映射-->
< property name = " tableUnderline " value = " false " />
</ bean >
<!-- 配置事务 -->
< bean id = " txManager "
class = " org.springframework.jdbc.datasource.DataSourceTransactionManager " >
< property name = " dataSource " ref = " dataSource " />
</ bean >
</ beans >
<? xml version = " 1.0 " encoding = " UTF-8 " ?>
< beans xmlns = " http://www.springframework.org/schema/beans "
xmlns : xsi = " http://www.w3.org/2001/XMLSchema-instance " xmlns : p = " http://www.springframework.org/schema/p "
xmlns : context = " http://www.springframework.org/schema/context "
xmlns : mvc = " http://www.springframework.org/schema/mvc "
xsi : schemaLocation = " http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-3.1.xsd
http://www.springframework.org/schema/context
http://www.springframework.org/schema/context/spring-context-3.1.xsd
http://www.springframework.org/schema/mvc
http://www.springframework.org/schema/mvc/spring-mvc-4.0.xsd " >
<!-- 自动扫描该包,使SpringMVC认为包下用了@controller注解的类是控制器 -->
< context : component-scan base-package = " com.gendml " />
<!--测试的时候把mvc注解掉-->
< mvc : annotation-driven >
< mvc : message-converters >
<!-- 处理响应中文内容乱码 -->
< bean class = " org.springframework.http.converter.StringHttpMessageConverter " >
< property name = " defaultCharset " value = " UTF-8 " />
< property name = " supportedMediaTypes " >
< list >
< value >text/html</ value >
< value >application/json</ value >
</ list >
</ property >
</ bean >
<!-- 配置Fastjson支持 -->
< bean class = " com.alibaba.fastjson.support.spring.FastJsonHttpMessageConverter " >
< property name = " charset " value = " UTF-8 " />
< property name = " supportedMediaTypes " >
< list >
< value >application/json</ value >
< value >text/html;charset=UTF-8</ value >
</ list >
</ property >
< property name = " features " >
< list >
< value >QuoteFieldNames</ value >
< value >WriteMapNullValue</ value >
< value >WriteDateUseDateFormat</ value >
< value >WriteEnumUsingToString</ value >
< value >DisableCircularReferenceDetect</ value >
</ list >
</ property >
</ bean >
</ mvc : message-converters >
</ mvc : annotation-driven >
</ beans >
Vue2.x+Elementui+V-charts
Vue.js เป็นเฟรมเวิร์ก JavaScript ที่ได้รับความนิยม Vue Framework Lightweight, Easy Learning, การเชื่อมข้อมูลสองทาง, การทำให้เป็นส่วนประกอบ, ข้อมูลและการแยกโครงสร้าง, DOM เสมือน, ความเร็วในการทำงานที่รวดเร็วและ Vue มีระบบนิเวศที่ทรงพลัง
Element Hungry หรือไม่?
V-charts เป็นส่วนประกอบไอคอนที่ใช้บรรจุภัณฑ์ Vue2.0 และ Echarts เท่านั้น
เพื่ออำนวยความสะดวกในการกระโดดของส่วนประกอบหน้าแรกส่วนประกอบการลงทะเบียนเข้าสู่ระบบได้ถูกวางไว้บน Vue Sub -Item
เนื่องจากฉันพบปรากฏการณ์ข้ามโดเมนเมื่อฉันเสร็จสิ้นการพัฒนาด้านหลังฉันกำหนดค่าตัวแทนเครือข่ายและเพิ่มคำนำหน้า "/API" ก่อนที่จะมีการร้องขอแต่ละครั้งใน Axios "เพื่อว่างเปล่า
โพสต์ใหม่ที่ไม่สามารถจับคู่การกำหนดเส้นทางที่ตรงกันกับส่วนประกอบ nofound
หน้าแรก
หน้านักเรียนใช้การกำหนดเส้นทางแบบฝังตัว
หน้าของครูใช้การกำหนดเส้นทางแบบฝังตัว รหัสหลักสูตร) และการปรับเปลี่ยนข้อมูลส่วนบุคคล (ครู INFO)
หน้าผู้ดูแลระบบใช้การกำหนดเส้นทางแบบฝังตัว
ฟังก์ชั่นการกำหนดเส้นทางก่อนหน้านี้เมื่อฉันเขียนอินเทอร์เฟซล็อกอินด้านหลังฉันตอบสนองต่อช่วงเวลาของสตริง UUID และส่งผ่านไปยังเซสชั่นสเตชั่นเป็นโทเค็นเข้าสู่ระบบเพื่อตรวจสอบว่าผู้ใช้อยู่ในสถานะเข้าสู่ระบบหรือไม่ ตรวจสอบร้านค้า SessionStorage ที่เก็บไว้ก่อนการส่งต่อเส้นทาง
โครงการ VUE ที่จะข้ามไปที่หน้าแรกหลังจากการเข้าสู่ระบบเสร็จสิ้น . กลาง (วัตถุ JSON ที่กำหนดเอง) จากนั้นจัดเก็บวัตถุรัฐและโทเค็นลงใน SessionStorage
กำหนดวัตถุสถานะใน Vuex ใช้