Java Web. IntelliJ IDEA. 起手式. - 纯 JSP/Servlet Intellijidea建javaWeb以及Servlet简单实现

个人笔记 ψ(._. )>

既是总结也是目录, IDEA 环境下创建 web 项目的基本流程:

  1. 创建 web 项目(没异议吧)..
  2. 配置运行环境,部署并运行(当然,是在有默认文件的情况下)
  3. 重新组织项目结构
  4. 添加必要的依赖
  5. 形成最小.原生态.轻量级可用 MVC 结构(JSP& Servlet) 
  6. 打包成 war 部署发布,测试
  7. 迭代开发,完成后回到 6
  8. 补充:项目管理
  9. 补充:优化流程
  10. 补充:后续

创建 web 项目

打开 IDEA

→ Create New Project

→ Java / Java EE / WebApplication 左边打勾,下面不用选(现在不都用 SSM 嘛)

→ Create web.xml 左边打勾 → Next

→ 修改项目名、路径 → Finish

配置运行环境,部署并运行(当然,是在有默认文件的情况下)

1、配置运行环境与部署

点击菜单栏 Run

→  Edit Configurations... → Run/Debug Configurations 窗口 

→ 左上角绿色的小加号 → Tomcat Server / Local → 

之后需要在这个窗口里做两件事情(配置本地 tomcat 以及部署 web 应用):

1、选择 Server → Configure... → 绿色加号  → 

添加本地 tomcat 路径

2、选择 Deployment → 右上角绿色小加号 → Artifact → 

看到形如上面的窗口 → Apply → OK

2、运行

 

点击菜单栏 Run → 第一个绿色的小三角 Run 'xxxxxx'

一切正常的话,我们就可以通过浏览器访问默认创建的 index.jsp 页面了

 3、相关资料

Intellijidea建javaWeb以及Servlet简单实现

重新组织项目结构

PS. 以下内容纯属个人偏好,仅供参考!

1、基本项目结构

在 Project Structure → Modules 里配置文件会方便一些:

最开始先设置成这样就够用了:

由上至下各个文件夹的功能:

src 用来放未编译的源代码( .java 文件);

src\main\java 用来放主程序源代码;

src\main\sql 用来放 DDL;

src\test\java 用来放测试程序源代码 ;

web 文件夹最终会被放到服务器的 tomcat 目录下;

web 目录下但不在 WEB-INF 内的文件可以通过 URL 直接访问;

web\WEB-INF 内的文件无法通过 URL 直接访问,通常在外面放一个 入口.html (或者 jsp)就可以了;

web\WEB-INF\views 各种 .jsp 文件(MVC 模式中的 view);

web\WEB-INF\classes 存放源代码编译后的 .class 字节码;

web\WEB-INF\lib 源代码用到的各种依赖包(.jar);

2、配置 lib

如果这个时候把  jar 包放在 web\WEB-INF\lib 是没办法找到这些包的,需要把 lib 添加为 Jar Directory:

3、存放其他多媒体资源(例如图片、视频等)

好多网站似乎都是 img js css 分布式存储的。。例如图片放在 img.sample.com ,js 放在 js.sample.com 

事实上全部放在外面已经整体上形成一个 github page 了。 所有 东西 都是 静态的, 我转念一想 这样 又 何尝不可????!!!【从头开始理清思路】

进化路径难道不是 静态网 -->  动态网 后台仅 提供 返 json 的接口

博客园的 图片 确实 是这样存的,但是真的就这样完全开源了, 可是这样,本质 上 js css html 本来就是 完全对 客户公开的 本来就是 要发到 客户端运行的! 

4、相关资料

为什么要防止用户直接访问jsp页面

关于 web-inf 目录

WEB-INF下的jsp文件如何访问css和js文件

jsp,html,css,js 等文件放在 web 根目录以外 怎么引用?  

添加必要的依赖

形成最小.原生态.轻量级可用 MVC 结构(JSP& Servlet) 

参考:杂货箱 #01# MVC 相关资料收集

 dao 层:对应 model 层,唯一的职责就是提供数据

service 层:业务逻辑

web 层:对应 controller 层,高度简洁

对 url 发起 http get 请求 --> web.xml mapper --> 分派给servlet --> servlet取得http请求调用对应方法(get.. post等) 【处理】 返回一个http response (可能type 是html也可能不是)

jsp 本质上也是 servlet ,这种关系 就和 scss 和 css 的关系一样

我所知道的另外一种结构

 以第一种 结构作为 基础 引入 ajax 向 url 发起请求得到 json 再用 json 数据 改变视图。

以登陆为例子:

用 jsp& servlet :登陆按钮必然是一个提交表单的input 指向某个 url, 点击后 发送一个 http post 请求, 收到一个新的 http页面,或者 刷新为 错误页面

用 ajax & json:登陆按钮可以是任何 东西, 点击 后 发送 ajax异步请求 ,客户端 通过返回的信息决定怎么做。

在服务端看来 两者都是 发起了一个 http 请求, 只不过一个返回 json数据 一个返回一个更新过的 .html

在客户端看来 第一种比较轻松, 完全 不用管其它,所有操作就是 发送请求, 更新页面就好了,  发 http 请求 ,接 html (不要在意url)不需要 javascript

第二种的话, 发 http 请求,接 json,根据 json 内容做相应动作,例如抛出错误, 关键字是 ajax

如何打包成 war

怎样令它在网上可访问

怎样优化步骤?

如何管理项目?

猜你喜欢

转载自www.cnblogs.com/xkxf/p/8541644.html
今日推荐