IDEA SSM配置安装过程中出现过的问题-有问题待解决
1、maven配置问题
maven本身配置几乎没有出现问题,但是新建的时候一定要用原装的,目前还不知道原因但是不用原装的会不自动下载,然后settings文件啥的要改成自己的,上面那个要选择原装的。好像不是新建时候的,是配置maven的时候,一定要用原装的,这里就先不弄图了,如果再次遇到这个问题去查一下idea maven配置就能找到那一步
2、springmvc配置几乎不会有问题,配置好xml文件之后通过maven等他自己下载就可以了
3、URI is not registered.............
这个问题主要是在将头部粘进来的时候遇到过
他会把那个网址标红然后说这个错误,这个只要去file-->settings...-->languages & frameworks--> 然后点击右边的加号,把那个URI粘贴进去就可以了,就是要加进去,不然会报错,大体意思就是这个URI没有注册,原理目前不清楚
4、
在解决数据库的过程中发现了这个问题
这个问题先不解决,因为可能是数据库那边没弄好导致的,不过也可能是端口占用,我重启了之后还是不行,就暂时先不管这个
5、mybatis连接时,数据库已经在右侧显示出来了但是运行就是会出问题
Failed to execute goal org.mybatis.generator:mybatis-generator-maven-plugin:
可能是generatorConfig.xml 配置文件中的位置不对,classPathEntry location=这里的位置是自己这个jar包的位置复制过来就可以了
不过我的位置对了还是这个问题
中间比较曲折,不过解决步骤大致涉及了这几个问题
(1)版本问题 因为我是mysql8.0版本,而官方好像对驱动名字进行了修改,原来的com.mysql.jdbc.driver需要改成com.mysql.cj.jdbc.driver这个,改完之后需要更新一下mysql-connector这个的版本,在xml里更新成mysql-connector-java-8.0.11.jar,就8.0.11版本,就行,然后等maven自动更新,更完之后记得改properties里的路径,不然会报错
(2)对应时区问题 这个我没有搞懂,不过弄完就对了,在navicat里输入select curtime();或select now();
查看当前时间,然后 输入 show variables like "%time_zone%";
最后 输入set time_zone="+8:00";或set global time_zone="+8:00";前者只能修改当前会话窗口的时区,关闭即还原,后者修改全局时区,永久有效
期间其实改过时区,然后包什么的也改好了,但是我为了。。。也不知道为了啥就重启了一下电脑,然后因为当时设置时区没有永久,他应该是就自动改回去了,所以就又曲折了很久,然后看报错说The server time zone value 'Öйú±ê׼ʱ¼ä' is unrecognized....然后就猛然想起来这个时区的事情,然后给改过来就好了~
6、要配置Junit了,不知道会遇到什么问题
junit碰到了大问题
暂时不想解决
看上去很费劲的一个问题
先看看下面的吧
重建SSM开始
问题:
maven中没有mybatis,需要在xml文件中配置的时候将mybatis的plugin跟pluginmanagement放在同一级别下,然后刷新一下,就能出现了,一定要刷新哦~
数据库的问题解决了,maven在每一次进行点击mybatis-generator:generate的时候,都会在*Mapper.xml文件中重新自动生成一次相应的代码,而这些代码,就一遍一遍地重复了
简单使用ssm实现注册登录的问题
1、url不能用user和register,一遍一遍尝试得到的结论,目前还不太知道具体的原因
2、Could not autowire. No beans of 'UserinfoService' type found.
在尝试各种解决办法,还没有找到好用的解决办法
这个问题暂时先不解决,先做前端了
网站开发学习
Tomcat目录结构
1.bin:
bin目录主要是用来存放tomcat的命令,主要有两大类,一类是以.sh结尾的(linux命令),另一类是以.bat结尾的(windows命令)。
很多环境变量的设置都在此处,例如可以设置JDK路径、tomcat路径
startup 用来启动tomcat
shutdown 用来关闭tomcat
修改catalina可以设置tomcat的内存
2.conf:
conf目录主要是用来存放tomcat的一些配置文件。
server.xml可以设置端口号、设置域名或IP、默认加载的项目、请求编码
web.xml可以设置tomcat支持的文件类型
context.xml可以用来配置数据源之类的
tomcat-users.xml用来配置管理tomcat的用户与权限
在Catalina目录下可以设置默认加载的项目
3.lib:
lib目录主要用来存放tomcat运行需要加载的jar包。
例如,像连接数据库的jdbc的包我们可以加入到lib目录中来。
4.logs:
logs目录用来存放tomcat在运行过程中产生的日志文件,非常重要的是在控制台输出的日志。(清空不会对tomcat运行带来影响)
在windows环境中,控制台的输出日志在catalina.xxxx-xx-xx.log文件中
在linux环境中,控制台的输出日志在catalina.out文件中
5.temp:
temp目录用户存放tomcat在运行过程中产生的临时文件。(清空不会对tomcat运行带来影响)
6.webapps:
webapps目录用来存放应用程序,当tomcat启动时会去加载webapps目录下的应用程序。可以以文件夹、war包、jar包的形式发布应用。也可以把应用程序放置在磁盘的任意位置,在配置文件中映射好就行。
7.work:
work目录用来存放tomcat在运行时的编译后文件,例如JSP编译后的文件。
清空work目录,然后重启tomcat,可以达到清除缓存的作用。
bin:该目录下存放的是二进制可执行文件,如果是安装版,那么这个目录下会有两个exe文件:tomcat6.exe、tomcat6w.exe,前者是在控制台下启动Tomcat,后者是弹出UGI窗口启动Tomcat;如果是解压版,那么会有startup.bat和shutdown.bat文件,startup.bat用来启动Tomcat,但需要先配置JAVA_HOME环境变量才能启动,shutdawn.bat用来停止Tomcat;
conf:这是一个非常非常重要的目录,这个目录下有四个最为重要的文件:
server.xml:配置整个服务器信息。例如修改端口号,添加虚拟主机等;下面会详细介绍这个文件;
tomcatusers.xml:存储tomcat用户的文件,这里保存的是tomcat的用户名及密码,以及用户的角色信息。可以按着该文件中的注释信息添加tomcat用户,然后就可以在Tomcat主页中进入Tomcat Manager页面了;
web.xml:部署描述符文件,这个文件中注册了很多MIME类型,即文档类型。这些MIME类型是客户端与服务器之间说明文档类型的,如用户请求一个html网页,那么服务器还会告诉客户端浏览器响应的文档是text/html类型的,这就是一个MIME类型。客户端浏览器通过这个MIME类型就知道如何处理它了。当然是在浏览器中显示这个html文件了。但如果服务器响应的是一个exe文件,那么浏览器就不可能显示它,而是应该弹出下载窗口才对。MIME就是用来说明文档的内容是什么类型的!
context.xml:对所有应用的统一配置,通常我们不会去配置它。
lib:Tomcat的类库,里面是一大堆jar文件。如果需要添加Tomcat依赖的jar文件,可以把它放到这个目录中,当然也可以把应用依赖的jar文件放到这个目录中,这个目录中的jar所有项目都可以共享之,但这样你的应用放到其他Tomcat下时就不能再共享这个目录下的Jar包了,所以建议只把Tomcat需要的Jar包放到这个目录下;
logs:这个目录中都是日志文件,记录了Tomcat启动和关闭的信息,如果启动Tomcat时有错误,那么异常也会记录在日志文件中。
temp:存放Tomcat的临时文件,这个目录下的东西可以在停止Tomcat后删除!
webapps:存放web项目的目录,其中每个文件夹都是一个项目;如果这个目录下已经存在了目录,那么都是tomcat自带的。项目。其中ROOT是一个特殊的项目,在地址栏中没有给出项目目录时,对应的就是ROOT项目。http://localhost:8080/examples,进入示例项目。其中examples就是项目名,即文件夹的名字。
work:运行时生成的文件,最终运行的文件都在这里。通过webapps中的项目生成的!可以把这个目录下的内容删除,再次运行时会生再次生成work目录。当客户端用户访问一个JSP文件时,Tomcat会通过JSP生成Java文件,然后再编译Java文件生成class文件,生成的java和class文件都会存放到这个目录下。
LICENSE:许可证。
NOTICE:说明文件。
配置文件server.xml 解析
<Server>:根元素,表示整个服务器的配置信息;
<Service>:<Server>的子元素,在<Server>中只能有一个<Service>元素,它表示服务;
<Connector>:<Service>的子元素,在<Service>中可以有N个<Connector>元素,它表示连接。
<Engine>:<Service>的子元素,在<Service>中只能有一<Engine>元素,该元素表示引擎,它是<Service>组件的核心。
<Host>:<Engine>的子元素,在<Engine>中可以有N个<Host>元素,每个<Host>元素表示一个虚拟主机。所谓虚拟主机就像是真的主机一样,每个主机都有自己的主机名和项目目录。例如<Host name=”localhost” appBase=”webapps”>表示主机名为localhost,这个主机的项目存放在webapps目录中。访问这个项目下的主机时,需要使用localhost主机名,项目都存放在webapps目录下。
<Context>:<Host>元素的子元素,在<Host>中可以有N个<Context>元素,每个<Context>元素表示一个应用。如果应用在<Host>的appBase指定的目录下,那么可以不配置<Context>元素,如果是外部应用,那么就必须配置<Context>。如果要为应用指定资源,也需要配置<Context>元素。