SSM框架

如果对SSM一无所知,推荐先去看这本书,可以在微信读书上看。

知识点

控制器返回对象时,对象需要有getter,setter方法,才能自动转化为json数据类型。

一个服务管理者对应多个业务

一个业务对应多个mybatis方法。

VO作为前端后端传参的实体类,POJO为数据库表的类。

Tomcat的conf/logging.properties可以修改UTF-8为GBK解决中文乱码问题

注解驱动在springmvc中,包含信息转换者,将对象转化为json等。

拦截器在springmvc中配置,需要设置排除拦截路径,拦截路径,拦截器类位置

视图解析器在springmvc中,当没有@ResponseBody注解时,默认用使用视图解析器。

扫描器在springmvc中配置,用于扫描JAVA源码

Spring.xml主要与mybatis交互,扫描接口,配置数据库信息,扫描mybatis配置文件等。

Config.xml在spring.xml中被调用,用于扫描实体类。同时打印sql语句以及结果

出现错误:至少有一个JAR被扫描用于TLD但尚未包含TLD。 为此记录器启用调试日志记录,以获取已扫描但未在其中找到TLD的完整JAR列表。 在扫描期间跳过不需要的JAR可以缩短启动时间和JSP编译时间,而且没有提示时哪里错误时,多半是xml文件错误,重新检查mybatis数据库映射文件是否一一对应。

Swagger安装时,需要在github中手动下载swagger-ui。到webapp中,然后在pom.xml配置后通过/projectname/swagger/index.html打开

Mybatis用arg0表示第一个参数。不要随便在mybatis语句中加分号;

Java不能引用传递改变参数值,只能通过返回值进行对对象进行赋值

如果对象为空, java.lang.NullPointerException: Cannot invoke ",考虑@Autowire注解是否是否有灰色参数

允许多行SQL语句运行。

Mysql

所有IP都能使用user用户

执行use mysql;

执行update user set host = '%' where user = 'root';这一句执行完可能会报错,不用管它

执行FLUSH PRIVILEGES;

创建用户并授权

CREATE USER 'hive'@'%' IDENTIFIED BY 'qqhaocmj';

GRANT ALL ON *.* TO 'hive'@'%';

知识点

mysql有很多自带的能够处理时间的函数

IDEA

IDEA自动生成POJO类

菜单View→Tool Windows→Database打开数据库工具窗口

左上角添加按钮“+”,选择数据库类型

通过IDEA生成实体类

选中一张表,右键--->Scripted Extensions--->选择Go to,

修改

packageName = "com.southwind.entity;"

def className = table.getName()

fields += [[
             name : col.getName(),

IDEA连接数据库,菜单View→Tool Windows→Database打开数据库工具窗口,左上角添加按钮“+”,选择数据库类型,通过IDEA生成实体类,选中一张表,右键--->Scripted Extensions--->选择Generate POJOS.clj

IDEA使用MAVEN推荐设置代理,setting中搜索proxy

部署项目到本地:

标记文件夹属性

添加modules

添加artifacts

修改artifacts

修改TomcatConfiguration

部署项目到服务器:

http://tomcat.apache.org/download-90.cgi下载tomcat安装包,解压到linux服务器。

修改服务器MYSQL的对应spring.xml的用户的访问IP为%,确保任何访问都能够连接

解压完毕后,大概会有这么几个文件

conf是放置配置文件的,其中有个server.xml需要我们修改,如果端口有冲突。我的服务器因为安装了spark,所以需要更改端口为9090

webapps文件夹用来放置war包,也就是你每次在本地运行项目时,生成的war包(图二)。war包在放入webapps文件夹后,启动服务后,会自动解压到webapps中(图三),根据文件夹的名称,我们可以访问对应的页面(图四)

lib文件夹用来放置各种jar包,如JDBC驱动等,不过现在跟我们没啥关系

logs文件夹存放日志文件,能看到Tomcat的日志文件(图一)。

图一(这里我使用code-server连接了服务器)

图二

图三

图四

IDEA SSM后端框架入门的更多相关文章

  1. SSM+Maven(教程二):Idea快速入门SSM+Maven框架。

    快速入门须知 这篇文章,直接应用已经搭建好的SSM框架.一般在公司里面,考虑框架的搭建.封装等问题,都由研发经理或者架构师完成,所以对于刚入门的小白来说,在去搭建整合花费的时间会很多很多.对于理解能力 ...

  2. Java后端框架之Spring Boot详解,文末有Java分布式实战项目视频可取

    在 Java 后端框架繁荣的今天,Spring 框架无疑是最最火热,也是必不可少的开源框架,更是稳坐 Java 后端框架的龙头老大. 用过 Spring 框架的都知道 Spring 能流行是因为它的两 ...

  3. AG-Admin微服务框架入门

    AG-Admin微服务框架入门  @qq群:一群: 837736451  二群 169824183 一 概要介绍 AG-Admin后台地址:https://gitee.com/minull/ace-s ...

  4. 后端API入门到放弃指北

    后端API入门学习指北 了解一下一下概念. RESTful API标准] 所有的API都遵循[RESTful API标准]. 建议大家都简单了解一下HTTP协议和RESTful API相关资料. 阮一 ...

  5. JavaWeb框架_Struts2_(一)----->Struts2 框架入门

    1.  框架入门 2.1  Struts2简介 (1). Struts2是一种基于MVC模式的的轻量级Web开发框架. MVC模式:MVC全名是Model View Controller,是模型(mo ...

  6. SSM三大框架整合详细教程(Spring+SpringMVC+MyBatis)【转】

    使用SSM(Spring.SpringMVC和Mybatis)已经有三个多月了,项目在技术上已经没有什么难点了,基于现有的技术就可以实现想要的功能,当然肯定有很多可以改进的地方.之前没有记录SSM整合 ...

  7. CI框架入门1

    CI框架入门: 1.url的特点             2.目录结构/布局             3.MVC分别在哪里,如何依葫芦画瓢             4.安全性             ...

  8. 【原创】NIO框架入门(四):Android与MINA2、Netty4的跨平台UDP双向通信实战

    概述 本文演示的是一个Android客户端程序,通过UDP协议与两个典型的NIO框架服务端,实现跨平台双向通信的完整Demo. 当前由于NIO框架的流行,使得开发大并发.高性能的互联网服务端成为可能. ...

  9. 【原创】NIO框架入门(三):iOS与MINA2、Netty4的跨平台UDP双向通信实战

    前言 本文将演示一个iOS客户端程序,通过UDP协议与两个典型的NIO框架服务端,实现跨平台双向通信的完整Demo.服务端将分别用MINA2和Netty4进行实现,而通信时服务端你只需选其一就行了.同 ...

随机推荐

  1. python之把列表当做队列使用

    把列表当做队列使用,只是在列表中第一个加入的元素,第一个提取出来,拿列表当做队列用,效率并不高.在列表中最后添加或者删除元素速度很快,然而从列表里插入或者从头弹出速度却不快,因为其他所有元素都要一个一 ...

  2. linux操作系统及常用命令

    GUN:GUN is Not UnixGPL:General Public License.通用公共许可证,版权 Copyright,Copyleft 开源协议LGPL:lesserGPLv2GPLv ...

  3. swift学习之label,button,imageView,字符串,数组,字典

    import UIKit class ViewController: UIViewController,UITextFieldDelegate { var textField: UITextField ...

  4. Visual Studio 2013中安装Resharper之后一些快捷键无法使用,比如F6和F12

    快捷键是一个很好用的东西,尤其对于计算机从业者来说,好的快捷键能够高程度提高工作效率.像我们程序员经常需要团队开发,我们会遇到一个问题,那就是快捷键不一致问题,我一般会安装resharper,但是有的 ...

  5. ConcurrentHashMap线程安全吗?

    前言 没啥深入实践的理论系同学,在使用并发工具时,总是认为把HashMap改为ConcurrentHashMap,就完美解决并发了呀.或者使用写时复制的CopyOnWriteArrayList,性能更 ...

  6. 利用 Watermill 实现 Golang CQRS

    CQRS CQRS 的意思是"命令-查询责任隔离".我们分离了命令(写请求)和查询(读请求)之间的责任.写请求和读请求由不同的对象处理. 就是这样.我们可以进一步分割数据存储,使用 ...

  7. [leetcode]508. Most Frequent Subtree Sum二叉树中出现最多的值

    遍历二叉树,用map记录sum出现的次数,每一个新的节点都统计一次. 遍历完就统计map中出现最多的sum Map<Integer,Integer> map = new HashMap&l ...

  8. 使用freetype来显示中文汉字和英文字符

    这里我们用到了freetype.进入官网http://savannah.nongnu.org/download/freetype/ 中下载最新的版本2.7的源代码和文件.freetype-2.7.ta ...

  9. Mysql 实战关于date,datetime,timestamp类型使用

    最近在做一个项目 项目中 不同的小伙伴同时在不同的业务模块中用到了date,datetime,timestamp这三个类型 特别是datetime,timestamp这两个 如果不能理解到位  其实很 ...

  10. @component的作用详细介绍

    最近项目要采用spring boot在学习的spring boot 的过程中第一次见到@component注解,特意在网上搜索下,摘录在此方便日后查阅. 1.@controller 控制器(注入服务) ...