يقدم:
في المقالة السابقة ، قدمت بناء مشروع SSM متعدد الوحدات. أثناء عملية البناء ، يدمج Spring SpringMVC و MyBatis ، سيكون هناك العديد من الأشياء التي نحتاج إلى تكوينها. هذا لا يهدف الوقت فحسب ، بل يجعل الأخطاء أكثر عرضة للأخطاء. نظرًا للمشاكل التي تسبب فيها ، قدم الفريق المحوري إطارًا جديدًا ، والذي يستخدم طريقة محددة للتكوين ، بحيث لم يعد المطورون بحاجة إلى تحديد تكوينات Boilerplate. وبهذه الطريقة ، تلتزم SPRING BOOT بأن تصبح رائدة في تطوير التطبيقات السريعة المزدهرة.
سمات:
1. إنشاء تطبيق ربيع مستقل
2. تضمين Tomcat ، لا حاجة لنشر ملفات الحرب
3. تبسيط تكوين Maven
4. تكوين الربيع تلقائيًا
5. توفير ميزات جاهزة للإنتاج مثل المقاييس والفحوصات الصحية والتكوينات الخارجية
6. لا يوجد أي توليد رمز على الإطلاق ولا توجد متطلبات لتكوين XML
(معظم المحتوى أعلاه مقتطف من موسوعة Baidu)
حسنًا ، هذا كل شيء لشرح Springboot. إذا كنت تريد معرفة المزيد بالتفصيل ، فيمكنك استخدام Baidu.
أوصيك ببناء مشروع Springboot باستخدام الأفكار أو STS (محرر تم تطويره بواسطة Spring Tool Suite Spring Company). أنا الآن أستخدم الأفكار ، لذا أستخدم الأفكار التالية لبناء المشروع.
1. إنشاء مشروع
بعد ملء المجموعة و atrifact ، انقر فوق التالي. هنا اخترت جرة. نظرًا لأن المستند الرسمي توصي بالتغليف في جرة ، فلن أشرح الكثير هنا.
تحقق من الويب هنا
هنا ، تحقق من MySQL و JDBC و MyBatis للنقر بعد ذلك
أدخل اسم المشروع ومسار المشروع هنا وانقر فوق إنهاء
هذا هو هيكل المشروع بعد اكتمال البناء الجديد
2. أضف pom.xml التبعية
نظرًا لأن Springboot لا يوصي باستخدام JSP كصفحات ، إذا كنت ترغب في استخدامه ، فيجب عليك إضافة تبعيات JSP.
<؟ XSI: Schemalocation = "http://maven.apache.org/pom/4.0.0 <StifactId> SpringBoot_Demo2 </shintifactid> <soph> 0.0.1-snapshot </version> <packaging> جرة </packaging> <name> springboot_demo2 </name> <scription> Demo Project for Spring Boot </description> <StifactId> Spring-Boot-Starter-Parent </stifactid> <soper> 2.0.0.release </version> <RelativePath/> </paret> <properties> <project.build.sourceencoding> utf-8 </project.build.sourceencoding> <project.reporting.outputencoding> utf-8 </project.reporting.outputencoding> <java.version> 1.8 </java.version> </properties> <ependencies> <reperency> <roupend> org.springframework.boot </groupid> </reperency> <reperency> <roupiD> org.springframework.boot </rougiD> <Stifactid> Spring-Boot-Starter-Web </shintifactid> </reperence> <redency> <roupiD> org.mybatis.spring.boot </grouped> <sophy> 1.3.2 </version> </sependency> <redency> <roupiD> mysql </rougiD> <StifactId> mysql-connector-java </stifactid> <scope> وقت التشغيل </scope> </dependency> <sperence> <roupled> org.springframework.boot <StifactId> Spring-boot-starter-test </artifactid> <scope> اختبار </scope> </reperence> <!-أضف تبعيات JSP-> <reperency> <roupiD> org.springframework.boot </rougiD> <roughid> org.apache.tomcat.embed </rougiD> <StifactId> tomcat-embed-jasper </shintifactid> </reperence> </endercies> <build> <clupins> <clupin> <rouciD> org.springframework.boot </groupiD> </sults> </build> </project>
3. Springboot يدمج springMVC
لأنه عند إنشاء المشروع ، اخترنا MyBatis و JDBC ، لذلك يتعين علينا تكوينه هنا.
تحرير التطبيق
# دليل البادئة الافتراضي للصفحة spring.mvc.view.prefix =/web-inf/jsp/# اللاحقة الافتراضية لصفحة الاستجابة spring.mvc.view.suffix = .jsp# configuration spring.datasource.driverclassname = com.mysql.jdbc.driverspring.dataSource.url = JDBC: mysql: // localhost: 3306/test؟ useUnicode = true & niceferencoding = utf-8spring.datasource.username = rootspring.datasource.password = 123456# mybatis file file location mybatis.mapper-locations: classpath: mapper/*
إذا كنت معتادًا على استخدام Application.yml ، فيمكن أيضًا استخدامه ، ولكن عند استخدام Application.yml ، يجب عليك تنظيفه لأول مرة ، وإلا سيتم الإبلاغ عن خطأ.
الخادم: المنفذ: 8080spring: MVC: عرض: بادئة:/web-inf/jsp/fafetix: .jsp dataSource: url: jdbc: mysql: // localhost: 3306/test؟ characterencoding = utf-8 & useUnicod com.mysql.jdbc.drivermybatis: mapper-locations: classpath: Mapping/*.
بعد تحرير التطبيق. الهيكل كما يلي
إنشاء فهرس جديد
package com.chaoqi.springboot_test.web ؛ استيراد org.springframework.stereotype.controller ؛ استيراد org.springframework.web.bind.annotation.requestmapping ؛ controllerpublerpubler indexcontroller requestmapping ("/show") السلسلة العامة getIndex () {index return ؛ }}تشغيل الوظيفة الرئيسية
قم بزيارة الصفحة ، ناجحة
4. Springboot يدمج MyBatis
إنشاء جدول قاعدة بيانات
- ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- `music_name` varchar (100) not null التعليق" عنوان الأغنية "، المفتاح الأساسي (` id`)) المحرك = innodb auto_increment = 4 charset الافتراضي = utf8 ؛- --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- "3.0m" ، "نسيان الماء") ؛ أدخل في قيم "Music_Info` (" 3 "،" Pig Diandian "،" 5.0m "،" Pig Little الذي يمكنه كتابة البرامج ") ؛إنشاء pojo
package com.chaoqi.springboot_test.dao.domain ؛ فئة عامة musicinfo {// key key id id id ؛ // اسم المغني سلسلة Singername الخاصة ؛ // حجم الأغنية السلسلة الخاصة الموسيقية ؛ // اسم الأغنية اسم سلسلة MusicName ؛ / ** * احصل على معرف المفتاح الأساسي music_info.id * * regurn معرف المفتاح الأساسي */ public integer getId () {return id ؛ } / ** * اضبط معرف المفتاح الأساسي Music_Info.id * * param id key key id * / public void setId (integer id) {this.id = id ؛ } / ** * احصل على اسم المغني music_info.singer_name * * @REGRURN اسم المغني * / السلسلة العامة getSingerName () {return singername ؛ } / ** * تعيين اسم المغني Music_info.singer_name * * param singername singername * / public void setSingerName (String Singername) {this.singername = singername == null؟ null: singername.trim () ؛ } / ** * احصل على حجم الأغنية Music_info.music_size * * @RETURN SIZE * / public string getMusicSize () {return MusicSize ؛ } / ** * تعيين حجم الأغنية Music_Info.music_size * * param Musicize حجم الأغنية * / public void setMusicSize (سلسلة MusicSize) {this.musicsize = Musicize == null؟ NULL: MusicSize.trim () ؛ } / ** * الحصول على اسم أغنية Music_info.music_name * * return اسم الأغنية * / السلسلة العامة getMusicName () {return musicName ؛ } / ** * اضبط اسم الأغنية Music_Info.music_name * * param musicname اسم الأغنية * / public void setMusicName (String MusicName) {this.musicName = musicName == null؟ null: musicname.trim () ؛ } Override public string toString () {return "musicInfo {" + "id =" + id + "، singername = '" + singername +'/' + "، musicizeize =" + musicize +'/'' + "، musicName = '" + musicname +'/'' '' ؛ }}إنشاء mapPPer.xml
<؟ مساحة الاسم = "com.chaoqi.springboot_test.dao.mapper.musicinfomapper"> <resultmap id = "baseresultmap" type = "com.chaoqi.springboot_test.dao.domain.musicinfo"> id " column = "singer_name" jdbctype = "varchar" property = "singername" /> <result column = "music_size" jdbctype = "varchar" property = "MusicSize" /> <result columper> "music_name"
إنشاء خريطة
package com.chaoqi.springboot_test.dao.mapper ؛ استيراد com.chaoqi.springboot_test.dao.domain.musicinfo ؛ استيراد org.apache.ibatis.annotations.resultmap ؛ استيراد org.apache.annotation. ResultMap ("BaseresultMap") select ("SELECT * from music_info") قائمة <MusicInfo> Selectall (MusicInfo MusicInfo) ؛}واجهة الخدمة
package com.chaoqi.springboot_test.service ؛ استيراد com.chaoqi.springboot_test.dao.domain.musicinfo ؛ استيراد java.util.list ؛ واجهة عامة musicinfoservice {public list <musicinfo> getMusicinfo (musicinfo) ؛فئة تنفيذ الخدمة
package com.chaoqi.springboot_test.service.impl ؛ استيراد com.chaoqi.springboot_test.dao.domain.musicinfo com.chaoqi.springboot_test.service.musicinfoservice ؛ استيراد org.springframework.beans.factory.annotation. @autowired musicinfomapper musicinfomapper ؛ قائمة Override العامة <MusicInfo> getMusicInfo (MusicInfo MusicInfo) {list <MusicInfo> musicInfos = musicinfomapper.selectall (null) ؛ إرجاع MusicInfos ؛ }}الهيكل بعد الخلق كما يلي
تحرير indexController
حزمة com.chaoqi.springboot_test.web ؛ استيراد com.chaoqi.springboot_test.dao.domain.musicinfo ؛ import com.chaoqi.springboot_test.service.musicinfoservice ؛ org.springframework.stereotype.controller ؛ استيراد org.springframework.web.bind.annotation.requestMapping ؛ استيراد org.springframework.web.bind.annotation.responsebody Autowired MusicInfoservice MusicInfoservice ؛ requestmapping ("/show") السلسلة العامة getIndex () {index return ؛ } REquestMapping ("/music") ResponseBody List Public List <MusicInfo> getMusicInfo (MusicInfo musicInfo) {list <MusicInfo> musicInfolist = musicInfoservice.getMusicinfo (null) ؛ إرجاع الموسيقى ؛ }}شرح springboottestapplication class mapperscan ("com.chaoqi.springboot_test.dao.mapper")
package com.chaoqi.springboot_test ؛ استيراد org.mybatis.spring.annotation.mapperscan ؛ استيراد org.springframework.boot.springapplication ؛ استيراد org.springframework.boot.autoconfigure.springbroingblication ؛ org.springframework.web.bind.annotation.requestmapping ؛ استيراد org.springframework.web.bind.annotation.restController ؛@springbootapplication@mappbootscan ("com.chaoqi.springboot_test.dao.mapper") args) {springapplication.run (SpringBootTestApplication.class ، args) ؛ }}قم بتشغيل المشروع بنجاح ، تم إكمال SpringBoot+SpringMVC+MyBatis (عنوان تنزيل رمز المصدر)
ما سبق هو كل محتوى هذه المقالة. آمل أن يكون ذلك مفيدًا لتعلم الجميع وآمل أن يدعم الجميع wulin.com أكثر.