SSM环境搭建
环境配置
IDEA
下载
版本:2018.1.7
下载地址:https://www.jetbrains.com/idea/download/#section=mac
安装
注册码地址:http://idea.lanyus.com/
使用前将以下内容复制到hosts文件中:
0.0.0.0 account.jetbrains.com
folder中快捷键:command+shift+G
/etc/hosts
sudo vi /etc/hosts sudo
安装IDEA并输入网页中的注册码
数据库
Mysql
下载安装
MySQL官网网站:https://dev.mysql.com/downloads/mysql/
环境变量配置
- 打开terminal
vim .bash_profile
使用vim进入.bash_profile文件进行文件配置
进入文件后按字母i进行添加
- 配置环境变量
export PATH=${PATH}:/usr/local/mysql/bin
如果以前没有配置过环境变量,那么这应该是一个空白文档。如果有内容,请在结束符前输入,如果没有内容,请直接输入如下语句:
export PATH=${PATH}:/usr/local/mysql/bin
完成后按esc退出,再按:输入wq进行保存,最后关闭终端并退出。
- 设置root密码
我们先在终端输入
mysql -u root -p
出现问题ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)
原因:未设置root密码 或者密码设置格式错误
解决如下:
苹果->系统偏好设置->关闭mysql服务(点击stop mysql server)
进入终端输入:cd /usr/local/mysql/bin/
回车后 登录管理员权限sudo su
回车后输入以下命令来禁止mysql验证功能./mysqld_safe --skip-grant-tables &
输入命令 ./mysql
回车后,输入命令FLUSH PRIVILEGES; (‘;’回车不能忘记)
回车后,输入命令 ALTER USER 'root'@'localhost' IDENTIFIED BY 'MyNewPass';(MyNewPass处输入你的密码)// //注意,这里的密码要用包含8位大写+小写+特殊字符+数字的密码
至此修改结束,重启终端后,输入 mysql -u root -p 回车 再键入密码:MyNewPass 就启动成功。
- 关于解决密码报错的问题
因为现在是新版本8.0了 ,老版本的修改密码的语法已不再适用,mysql 5.7.9以后废弃了password字段和password()函数;
1.mysql>use mysql;
2.mysql>FLUSH PRIVILEGES;
3.mysql>ALTER user ‘root’@‘localhost’ IDENTIFIED BY ‘newpassward’ //注意,这里的密码要用包含8位大写+小写+特殊字符+数字的密码
4.mysql>quit;
退出mysql;
5.mysql -uroot -p
最后直接用mysql -uroot -p 输入刚才设置的密码即可正常登录!
Maven
下载安装
Maven官网:http://maven.apache.org/download.cgi Archives
将apache-maven-3.5.0-bin.tar.gz解压到以下目录
/Users/luzihai/Documents/
配置环境变量
打开终端:
vim ~/.bash_profile
export M2_HOME=/Users/xxx/Documents/apache-maven-3.6.0
export PATH=$PATH:$M2_HOME/bin
保存并退出,执行以下命令并生效
source ~/.bash_profile
查看配置是否生效,输入
mvn -v
Apache Maven 3.6.0 (97c98ec64a1fdfee7767ce5ffb20918da4f719f3; 2018-10-25T02:41:47+08:00)
Maven home: /Users/luzihai/Documents/apache-maven-3.6.0
Java version: 11, vendor: Oracle Corporation, runtime: /Library/Java/JavaVirtualMachines/jdk-11.jdk/Contents/Home
Default locale: zh_CN_#Hans, platform encoding: UTF-8
OS name: "mac os x", version: "10.12.6", arch: "x86_64", family: "mac"
修改配置文件
/Users/luzihai/Documents/apache-maven-3.6.0/conf/settings.xml
修改本地repo地址为 MavenRepository是自己建的文件名
<localRepository>/Users/luzihai/Documents/MavenRepository</localRepository>
<mirror>
<id>mirrorId</id>
<mirrorOf>repositoryId</mirrorOf>
<name>Human Readable Name for this Mirror.</name>
<url>http://my.repository.com/repo/path</url>
</mirror>
修改为阿里云仓库(不改好像也挺快的)
<mirror>
<id>nexus-aliyun</id>
<mirrorOf>*</mirrorOf>
<name>Nexus aliyun</name>
<url>http://maven.aliyun.com/nexus/content/groups/public</url>
</mirror>
Mybatis
Config
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE configuration
PUBLIC "-//mybatis.org//DTD Config 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-config.dtd">
<configuration>
<properties resource="db.properties"></properties>
<settings>
<!--缓存-->
<setting name="cacheEnabled" value="true"/>
<!--<setting name="lazyLoadingEnabled" value="true"/>-->
<!--<setting name="multipleResultSetsEnabled" value="true"/>-->
<!--<setting name="useColumnLabel" value="true"/>-->
<!--<setting name="useGeneratedKeys" value="false"/>-->
<!--<setting name="autoMappingBehavior" value="PARTIAL"/>-->
<!--<setting name="autoMappingUnknownColumnBehavior" value="WARNING"/>-->
<!--<setting name="defaultExecutorType" value="SIMPLE"/>-->
<!--<setting name="defaultStatementTimeout" value="25"/>-->
<!--<setting name="defaultFetchSize" value="100"/>-->
<!--<setting name="safeRowBoundsEnabled" value="false"/>-->
<!--下划线风格转换为驼峰风格-->
<setting name="mapUnderscoreToCamelCase" value="true"></setting>
<!--LOG4J日志-->
<setting name="logImpl" value="LOG4J"></setting>
<!--<setting name="localCacheScope" value="SESSION"/>-->
<!--<setting name="jdbcTypeForNull" value="OTHER"/>-->
<!--<setting name="lazyLoadTriggerMethods" value="equals,clone,hashCode,toString"/>-->
</settings>
<environments default="dev">
<environment id="dev">
<transactionManager type="JDBC"></transactionManager>
<dataSource type="UNPOOLED">
<property name="driver" value="${driver}" />
<property name="url" value="${url}" />
<property name="username" value="${username}" />
<property name="password" value="${password}" />
</dataSource>
</environment>
</environments>
<!-- Continue going here -->
<mappers>
<!--单个xml加载-->
<!--<mapper resource="com/hz/mapper/GirlMapper.xml"></mapper>-->
<!--加载整个包-->
<package name="com.hz.mapper"></package>
</mappers>
</configuration>
Mapper
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
db.properties
driver=com.mysql.cj.jdbc.Driver
url=jdbc:mysql://localhost:3306/mybatis
username=root
password=123456789
log4j.proerties
# Global logging configuration
log4j.rootLogger=ERROR, stdout
# MyBatis logging configuration...
#log4j.logger.org.mybatis.example.BlogMapper=TRACE
log4j.logger.com.hz.mapper=TRACE
# Console output...
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern=%5p [%t] - %m%n
Spring
依赖
<!-- https://mvnrepository.com/artifact/org.springframework/spring-context --> <dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-context</artifactId>
<version>5.1.3.RELEASE</version>
</dependency>
配置文件
applicationContext.xml
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
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">
<!--将对象得创建交给spring 容器 在这个配置文件里去生命要什么对象-->
<!--class 写java类的全限定类名-->
<bean class="com.hz.pojo.Girl" id="girl">
</bean>
</beans>
SpringMVC
Web.xml
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="http://xmlns.jcp.org/xml/ns/javaee"
xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee
http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd"
version="3.1"
metadata-complete="true">
<!--注册一个前端控制器叫做DispatcherServlet-->
<servlet>
<!--如果不修改spring配置文件默认的位置 那么springmvc会去web-inf下面找一个springmvc-servlet.xml的文件
-->
<servlet-name>springmvc</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
<!--<init-param>-->
<!--<!–xml文件的名字 重命名–>-->
<!--<param-name>namespace</param-name>-->
<!--<param-value>mvc1218</param-value>-->
<!--</init-param>-->
<init-param>
<param-name>contextConfigLocation</param-name>
<!--classpath也就是resources文件夹下的springmvc 可改名-->
<param-value>classpath:springmvc.xml</param-value>
</init-param>
</servlet>
<!--servlet映射配置-->
<servlet-mapping>
<servlet-name>springmvc</servlet-name>
<!--这里写 / -->
<url-pattern>/</url-pattern>
</servlet-mapping>
</web-app>
Springmvc.xml
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
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">
<!--常用内部资源视图解析器-->
<bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">
<!--1 前缀-->
<property name="prefix" value="/jsp/"/>
<!--2 后缀-->
<property name="suffix" value=".jsp"/>
</bean>
<!--写一个测试案例-->
<bean class="com.yimo.controller.HelloController" name="/helloController"></bean>
</beans>

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
-
上一篇
python循环语句详细讲解
想必大家都知道python循环语句吧,可以python循环语句有多种,比如for循环、while循环、if、else等等, 我们可以通过设置条件表达式永远不为 false 来实现无限循环,实例如下: >>>for i in range(5,9) : print(i) 5678 >>>for i in range(0, 10, 3) : print(i) 0369 >>>for i in range(-10, -100, -30) : print(i) -10-40-70 0 Google 1 Baidu 2 Runoob 3 Taobao 4 QQ continue语句被用来告诉Python跳过当前循环块中的剩余语句,然后继续进行下一轮循环 Python pass是空语句,是为了保持程序结构的完整性。 pass 不做任何事情,一般用做占位语句,如下实例 使用循环嵌套来实现99乘法法则 十进制转化 冒泡排序很经典的排序方式,从数组中的第0个元素开始,与后面一个元素进行比较,如果前面的元素大于后面的元素,就调换位置,循环到最后(即:a0...
-
下一篇
威胁快报| ThinkPHP v5 新漏洞攻击案例首曝光,阿里云已可告警并拦截
2018年12月10日,ThinkPHP v5系列发布安全更新,修复了一处可导致远程代码执行的严重漏洞。阿里云态势感知已捕获多起基于该漏洞的真实攻击,并对该漏洞原理以及漏洞利用方式进行分析。现在,对于云上未及时进行系统更新的用户,阿里云态势感知已提供攻击告警,WAF产品支持同步拦截,目前云上客户基本未受到影响。 此次漏洞由ThinkPHP v5框架代码问题引起,其覆盖面广,且可直接远程执行任何代码和命令。电子商务行业、金融服务行业、互联网游戏行业等网站使用该ThinkPHP框架比较多,需要格外关注。阿里云是仅有少数的捕获到该漏洞整个攻击链的云服务商。下面我们对其漏洞背景,攻击原理和行为进行全面分析,并提供真实案列分析。 漏洞分析 由于ThinkPHP v5框架对控制器名没有进行足够的安全检测,导致在没有开启强制路由的情况下,黑客构造特定
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- Windows10,CentOS7,CentOS8安装MongoDB4.0.16
- CentOS关闭SELinux安全模块
- Windows10,CentOS7,CentOS8安装Nodejs环境
- Jdk安装(Linux,MacOS,Windows),包含三大操作系统的最全安装
- SpringBoot2编写第一个Controller,响应你的http请求并返回结果
- SpringBoot2全家桶,快速入门学习开发网站教程
- MySQL数据库在高并发下的优化方案
- SpringBoot2初体验,简单认识spring boot2并且搭建基础工程
- SpringBoot2配置默认Tomcat设置,开启更多高级功能
- CentOS7,8上快速安装Gitea,搭建Git服务器