Intellij 14 SpringMVC+Mytatisフレームワークの統合と呼び出しテストの構築
このブログは2週間も引きずって書き始めたので、本当に忙しいです.最初の2つのブログMybatis、SpringMVCでは、Intellij 14でフレームワークを構築する方法をそれぞれ紹介しています.この記事では、以下の内容を紹介します.は、2つのフレームワークをどのように統合するか(実際には簡単ですが、インスタンスコードは前の2つの編とは少し異なる場合があります) は、前の文書において実装されていないPOSTインターフェース を実装する. Javaでインタフェースを呼び出す方法 2つのフレームワークの統合:
そしてTestの正常な使用を保証するために、
POSTインタフェースを実現する:
これでインタフェースの作成に成功し、Tomcatサーバを起動しましょう.
Javaの呼び出しインタフェース:
Androidの開発経験があればインタフェースをオフにすることができます.OkHttpを紹介しようと思っていたのですが、どうやってJDK 7以上をサポートしているのか、うちの会社はまだ6なので、自分で衣食を豊かにするしかありません.実は
POSTインタフェースを要求するコードは以下の通りです.
後記:
プロジェクトの統合が終わってから2週間が経ったので、プロジェクトの状態が変わったので、より詳細な手順のスクリーンショットはありませんが、この部分は相対的に穴がなく、簡単に通過するはずです.そしてIDEAで測りながら書いていないので、以上のコードはテストなしで純粋に打っています.今Gsonを使っているうちにいくつかの穴に遭遇して、まだ解決していないので、次のブログでGsonの詳細な使い方を共有します.
, , `xml` ,`spring-mybatis.xml` `mvc-dispatcher-servlet.xml`, Test spring `@ContextConfiguration(locations = {"classpath:spring-mybatis.xml"})` , `web.xml` web 。 web , , `spring-mybatis.xml` `WEB-INF` `spring` , `web.xml` ( `mvc-dispatcher-servlet.xml` `spring-servlet.xml` ):
<web-app version="2.5" xmlns="http://java.sun.com/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">
<servlet>
<servlet-name>MESServiceservlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServletservlet-class>
<init-param>
<param-name>contextConfigLocationparam-name>
<param-value>/WEB-INF/spring/spring-servlet.xmlparam-value>
init-param>
<load-on-startup>1load-on-startup>
servlet>
<servlet-mapping>
<servlet-name>MESServiceservlet-name>
<url-pattern>/url-pattern>
servlet-mapping>
<context-param>
<param-name>contextConfigLocationparam-name>
<param-value>/WEB-INF/spring/spring-mybatis.xmlparam-value>
context-param>
<listener>
<listener-class>org.springframework.web.context.ContextLoaderListenerlistener-class>
listener>
web-app>
そしてTestの正常な使用を保証するために、
spring
フォルダもResourcesに設定しました.これでMybatis+SpringMVCは統合が完了しても、前の2つのブログの手順に従って構成し、テストに成功すれば、このステップは水が流れるはずです.POSTインタフェースを実現する:
Controller 。
package com.gcoreinc.controller;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;
@Controller
@RequestMapping("/home")
public class HelloController {
//@RequestMapping("/hello")
//@ResponseBody
//public String sayHello(){
// return "Hello World!";
//}
// ,
@RequestMapping(path = "/hello", method = RequestMethod.GET)
@ResponseBody
public String sayHello(){
return "Hello World!";
}
// POST
@RequestMapping(path = "/newworld", method = RequestMethod.POST)
public void addWorld(@RequestBody World world) {//World ,
System.out.println(boxDetail);
// Service add
}
}
これでインタフェースの作成に成功し、Tomcatサーバを起動しましょう.
Javaの呼び出しインタフェース:
Androidの開発経験があればインタフェースをオフにすることができます.OkHttpを紹介しようと思っていたのですが、どうやってJDK 7以上をサポートしているのか、うちの会社はまだ6なので、自分で衣食を豊かにするしかありません.実は
HttpURLConnection
を使ってHTTPリンクを取得しています.GETリクエストを取得するインタフェースは、以下のようにすることができる(上記のhelloworldを例に挙げる).public void helloWorld(){
URL url = new URL(http://127.0.0.70:8080/TestSpringMVC/home/hello);
HttpURLConnection conn = url.openConnection();
conn.setRequestMethod("GET");
conn.connect();
if (conn.getResponseCode() == CON_SUC) {
BufferedReader reader = new BufferedReader(new InputStreamReader(conn.getInputStream()));
String line = null;
while (null != (line = reader.readLine())) {
result.append(line);
}
reader.close();
conn.disconnect();
}
System.out.println(result.toString());
}
POSTインタフェースを要求するコードは以下の通りです.
public void newWorld(){
// JSON , google `Gson`, maven
//World , World , , Date,TimeStamp
World world = new World();
world.setName("XiWorld");
world.setGod("XiWenRen");
world.setProgramable(false);
Gson gson = new Gson();
String json = gson.toJson(world);
URL url = new URL(http://127.0.0.70:8080/TestSpringMVC/home/newworld);
HttpURLConnection conn = url.openConnection();
conn.setRequestMethod("POST");
conn.setDoInput(true);
conn.setDoOutput(true);
conn.setRequestProperty("Content-Type", "application/json");
conn.connect();
DataOutputStream dataOutputStream = new DataOutputStream(conn.getOutputStream());
dataOutputStream.writeBytes(jsonData);
dataOutputStream.flush();
dataOutputStream.close();
}
, world
:`@RequestBody` Controller json World , World
後記:
プロジェクトの統合が終わってから2週間が経ったので、プロジェクトの状態が変わったので、より詳細な手順のスクリーンショットはありませんが、この部分は相対的に穴がなく、簡単に通過するはずです.そしてIDEAで測りながら書いていないので、以上のコードはテストなしで純粋に打っています.今Gsonを使っているうちにいくつかの穴に遭遇して、まだ解決していないので、次のブログでGsonの詳細な使い方を共有します.