java后端的几种实现方式

java后端的几种实现方式

最近没事在做一些小题目,遇到需要提供http restful接口,通过接口操作zookeeper实现增删改查。虽然之前看过java后端的内容,但是基本忘的差不多了,这次梳理了一下,都是入门的东西。自己总结用,如有错误还请多指正。
首先说这次了解到的主要是三种方式:
第一种:servelet + jsp 手动配置项较多,非框架
第二种:Spring框架 目前应该是后端主流实现方式吧
第三种:Spring boot 在Spring框架的基础上进一步简化了实现方式,通过几个注解就可以实现自动配置。

  • 一、 servelet + jsp方式
    开始的想法,由于只是简单的需求,所以没想引入Spring框架。这个应该是依赖最少的方式了。
    以idea为例,说一下搭建过程:
    参考:

https://blog.csdn.net/yurong33333/article/details/88604219

首先项目应该是web项目,这个在创建的时候可以选择。如果一开始是maven项目,需要添加框架支持,添加完成后会自动生成web文件夹和web.xml配置文件。如图,在项目配置中添加就可以
在这里插入图片描述
添加完成后在artifacts选项卡中添加打包配置,点击后会出现模块选择,选中确定就可以了。
在这里插入图片描述
成功以后如下,点击ok关闭窗口就可以了,不需要其他配置。
在这里插入图片描述
然后开始编写servelet代码,继承HttpServlet类,重写doGet方法。只实现简单的打印文字到网页的功能,不需要编写jsp文件,只要servelet就可以实现。

@Override
    public void doGet(HttpServletRequest request, HttpServletResponse response)
            throws ServletException, IOException {
        response.setContentType("text/html; charset=utf-8");
        response.setCharacterEncoding("UTF-8");
        OutputStream out = response.getOutputStream();
        out.write("hello".getBytes(StandardCharsets.UTF_8));
        out.flush();
    }

配置web.xml,按自己的servelet类名自行调整

<servlet><!--servlet类路径配置-->
        <servlet-name>UtilsServlet</servlet-name>
        <servlet-class>com.baidu.servlet.UtilsServlet</servlet-class>
    </servlet>

    <servlet-mapping><!--servlet类映射配置-->
        <servlet-name>UtilsServlet</servlet-name>
        <url-pattern>/UtilsServlet</url-pattern>  ##网页访问地址
    </servlet-mapping>

接下来配置tomcat应用:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

配置好以后就可以运行了,浏览器地址输入访问地址,然后在后面加上/UtilsServlet (按项目调整,web.xml自己配置的servelet类访问路径),就可以看到 输出的文字了。当然这里可以再doGet方法里实现各种逻辑,返回jsp页面 ,返回json结果等,一般项目是再加上一个service层(package),将复杂的业务逻辑放在service中。

  • 二、Spring框架(未实现,只是简单试了下搭建)

在之前的基础上添加Spring的框架支持。
两种方式:
1、还是在项目配置中添加
在这里插入图片描述
2、右键project – add framework support,这里虽然可以选择单个的支持,但是好像选了Spring MVC后就会自动包含所有组件(只选择Spring MVC,下次再添加spring的框架支持时,发现已经找不到了,说明应该默认所有都已添加),右边选择依赖位置,如果没有下载好的jar包,可以选择download,会在项目下生成lib文件夹,然后下载需要的jar包。也可以在maven添加依赖,这样就可以做到方便管理了。

在这里插入图片描述

  • 三、Spring boot

最简单的方式。不用添加任何框架支持,对,Spring的也不需要,直接在pom文件中加上依赖就行,真香。

   <!-- 相关jar包 -->
    <dependencies>
    	<!-- Springboot核心jar包 -->
     	<dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter</artifactId>
        </dependency>
        <!-- web开发包:包含Tomcat和Springmvc -->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>
    </dependencies>

然后新建两个类,添加几个注解就可以打印出来hello world。
可以参考这篇博文

https://blog.csdn.net/sunnyzyq/article/details/86711708

注意项目结构,app类要在controller的上层(否则报错:This application has no explicit mapping for /error, so you are seeing this as a fallback),同时需要新建一个package,不能将app类直接放在默认java文件夹下,不然代码会标红,原因是注解类型错误,当然可以改用其他注解来解决,我这里就不贴了。

  • 1
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值