Restful后台系统搭建(一)

2 篇文章 0 订阅
2 篇文章 0 订阅

入行Java Web端已经大概有两年左右了,作为新手小白,一直希望自己做一点什么小功能,考虑过培训时候使用的Spring+status2+mybatis,再配上tomcat部署,但这套框架部署起来很是麻烦,其功能很多作为自己学习使用的框架就有点大材小用了,后来在公司学习到了Restful请求,被其深深吸引,简单而又不缺失功能,一学习才知道有Jersey的框架,再配合jetty Servlet容器,使用和部署是如此的容易。所以我想用几篇文章来描述一下我搭配的学习框架,给刚入门的学弟学妹们一个学习的方向。

1、首先介绍一下这套框架所使用的一些工具及依赖吧:

构建工具:Maven

Maven是一个很方便的构建工具,只要配置好源仓地址,添加一个插件依赖非常容易,并且可以配置build的一些配置,方便构建生成jar、war等。教程我在这里就不讲述了。


测试工具:JMeter

JMeter是个很强大的测试工具,可以模拟前端任何请求(包括普通post/get以及文件上传下载等请求)。教程大家自己去搜索吧,很容易使用。


Servlet容器:Jetty

Jetty 是一个开源的servlet容器,它为基于Java的web容器,例如JSP和servlet提供运行环境。Jetty是使用Java语言编写的,它的API以一组JAR包的形式发布。

开发人员可以将Jetty容器实例化成一个对象,可以迅速为一些独立运行(stand-alone)的Java应用提供网络和web连接。

我截取了百科上的一句话来描述jetty,该容器的作用和tomcat一样,提供一个servlet的容器,而且是开源的,使用和测试起来都非常方便,不需要额外的程序支持。


Restful框架:Jersey

Restful有什么好处我就不详细说了,总之使用起来很容易。


JSON解析工具:Jackson

我的目标是Restful提供一个JSON格式的请求/返回体,所以json转换工具必不可少。


Junit单元测试:PowerMock

PowerMock很容易可以构造任何想测试的方法,比如私有方法,静态常量想修改值等等,其都可以做到是一个很强大的插件。


数据库连接工具:mybatis

我在培训的时候学习的框架是spring+status2+mybatis,当时很多培训机构培训的都是Hibernate。

但我觉得mybatis使用起来比Hibernate更容易,功能更丰富一些,而且我的公司也是使用mybatis作为数据库连接层,其优势自不必说。


数据库:Mysql

数据库这个其实看自己所好,现在两大主流数据库Mysql和Oracle,自己都可以练习着使用,个人觉得Mysql约束较少,部署起来也容易得很。


2、pom文件及依赖

我的maven源仓地址:

<mirror>
      <id>maven-repository</id>
      <mirrorOf>maven-repository</mirrorOf>
      <name>Human Readable Name for this Mirror.</name>
      <url>http://mvnrepository.com</url>
    </mirror>
    <mirror>
      <id>alimaven</id>
      <name>aliyun maven</name>
      <url>http://maven.aliyun.com/nexus/content/groups/public/</url>
      <mirrorOf>central</mirrorOf>        
    </mirror>


pom文件内容:

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
	xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
	<modelVersion>4.0.0</modelVersion>
	<groupId>com.black.apple.frame</groupId>
	<artifactId>web-background-frame</artifactId>
	<version>1.0.0-SNAPSHOT</version>
	<dependencies>
		<!-- Junit -->
		<dependency>
			<groupId>junit</groupId>
			<artifactId>junit</artifactId>
			<version>3.8.1</version>
			<scope>test</scope>
		</dependency>

		<!-- Jersey -->
		<dependency>
			<groupId>com.sun.jersey</groupId>
			<artifactId>jersey-servlet</artifactId>
			<version>1.19</version>
		</dependency>
		<!-- Jetty -->
		<dependency>
			<groupId>org.eclipse.jetty.aggregate</groupId>
			<artifactId>jetty-all-server</artifactId>
			<version>8.1.16.v20140903</version>
		</dependency>

		<!-- 日志输出 -->
		<dependency>
			<groupId>org.slf4j</groupId>
			<artifactId>slf4j-api</artifactId>
			<version>1.7.25</version>
		</dependency>
		<dependency>
			<groupId>org.slf4j</groupId>
			<artifactId>slf4j-log4j12</artifactId>
			<version>1.7.25</version>
		</dependency>

		<!-- 数据库依赖 -->
		<dependency>
			<groupId>mysql</groupId>
			<artifactId>mysql-connector-java</artifactId>
			<version>6.0.6</version>
		</dependency>

		<!-- mybatis -->
		<dependency>
			<groupId>org.mybatis</groupId>
			<artifactId>mybatis</artifactId>
			<version>3.4.2</version>
		</dependency>

		<!-- Json解析 -->
		<dependency>
			<groupId>com.fasterxml.jackson.core</groupId>
			<artifactId>jackson-core</artifactId>
			<version>2.8.5</version>
		</dependency>
		<dependency>
			<groupId>com.fasterxml.jackson.core</groupId>
			<artifactId>jackson-annotations</artifactId>
			<version>2.8.5</version>
		</dependency>
		<dependency>
			<groupId>com.fasterxml.jackson.core</groupId>
			<artifactId>jackson-databind</artifactId>
			<version>2.8.5</version>
		</dependency>

		<!-- guava工具 -->
		<dependency>
			<groupId>com.google.guava</groupId>
			<artifactId>guava</artifactId>
			<version>18.0</version>
		</dependency>

		<!-- 工具 -->
		<dependency>
			<groupId>org.apache.commons</groupId>
			<artifactId>commons-lang3</artifactId>
			<version>3.5</version>
		</dependency>

		<dependency>
			<groupId>org.powermock</groupId>
			<artifactId>powermock-api-mockito</artifactId>
			<version>1.6.5</version>
		</dependency>
		<dependency>
			<groupId>org.powermock</groupId>
			<artifactId>powermock-module-junit4</artifactId>
			<version>1.6.5</version>
		</dependency>
	</dependencies>
</project>



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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值