本文介绍的是在Mac下搭建的,Windows下也差不多。文章看起来步骤很多,其实很多都是很简单的,动手搞搞很快就结束了。废话不多说直接开始。
一、准备工作:
1、MyEclipse 2016 ,激活码这里拿 激活
2、Tomcat,随便哪个版本,需要哪个就下哪个,本文使用MyEclipse自带的Tomcat 7
3、下载 Struts2,本文使用的是 Struts-2.3.32
这个安装下载没什么难度啦,就不说了。
二、搭建服务器
1、配置Taomcat
打开MyEclipse,在MyEclipse中点击MyEclipse -> 配好设置 -> myeclipse -> servers-> Runtime Environments,默认MyEclipse自带一个Tomcat 7,如果需要其他版本可以自己创建。不使用MyEclipse自带,创建Tomcat,上图中点击 Add... ,选择需要创建的Tomcat版本,再将自己下载的Tomcat文件导入就可以了。
查看Tomcat
创建Tomcat
2、新建工程
在MyEclipse中点击File -> New -> Web Project 或者在MyEclipse 项目列表的空白面板右击也可以创建
新建工程
接着输入项目名称,其他采用默认的,直接Finish就好了。
WebServer
3、工程配置
3.1、首先打开下载好的 Struts 文件,apps -> struts2-blank.war ,找到struts2-blank.war文件,并解压得到以下三个文件。
解压 struts2-blank
3.2、将WEB-INF的lib目录下的所有文件、classes目录下的struts.xml以及WEB-INF目录下的web.xml拷贝到项目中的相应位置
拷贝文件 3.3、struts.xml 中,把 "struts.enable.DynamicMethodInvocation" 对应的value设置成 true,在把不需要的代码删除(见下图struts),同时还需要删除web.xml中无用代码(见下图web,红色方框的删除):
struts
web
四、启动Tomcat
在启动Tomcat前,需要将新建的项目加入到Tomcat中,(如果没有 Servers ,选择Window -> Show View -> Other...,在输入框内搜索servers)按照下图操作:
添加工程
Add后直接Finish
接着就可以启动Tomcat了,在切到Console看log信息,看到Server startup in **** ms(**** 表示启动时间) 这个就是表示启动成功了。
启动Tomcat
五、前后端交互
1、在src下创建一个xyzcwb包,xyzcwb下建个Java文件。就可以开始撸代码啦
LoginAction.java 代码
package xyzcwb;
import java.io.IOException;
import java.io.PrintWriter;
import javax.servlet.http.HttpServletResponse;
import org.apache.struts2.ServletActionContext;
import com.opensymphony.xwork2.ActionSupport;
public class LoginAction extends ActionSupport{
private String userName;//用户名
private String password;//密码
/**
* 登录
* */
public void login() throws IOException {
System.out.print("12345");
//这个是和客户端交互的类
HttpServletResponse response = ServletActionContext.getResponse();
PrintWriter writer = response.getWriter();
//模拟账号和密码验证
if (userName.equals("123456") && password.equals("123456")) {
//这个是可以返回给客户端的数据
writer.write("login succeed");
}
else {
writer.write("username or password error");
}
writer.flush();
}
public String getUserName() {
return userName;
}
public void setUserName(String userName) {
this.userName = userName;
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
}
写完代码,还要配置,这样才能被访问到;前往 struts.xml 加入<action name = "login" class = "xyzcwb.LoginAction" method = "login" ></action>,这样客户端就可以访问login 方法了。
配置struts
访问的链接:http://本机IP地址:8080/项目名称/方法
2、编写客户端,这里采用Get请求获取数据
NSURL *url = [NSURL URLWithString:@"http://192.168.10.125:8080/WebServer/login?userName=123456&password=123456"];
NSURLRequest *request = [NSURLRequest requestWithURL:url];
NSURLSession *session = [NSURLSession sharedSession];
NSURLSessionDataTask *dataTask = [session dataTaskWithRequest:request completionHandler:^(NSData * _Nullable data, NSURLResponse * _Nullable response, NSError * _Nullable error) {
if (error == nil) {
//项目中返回的是字符串格式,所以没有采用JSON解析
NSLog(@"%@",[[NSString alloc] initWithData:data encoding:NSUTF8StringEncoding]);
}
else }
NSLog(@"%@",[error description]);
}
}];
[dataTask resume];
结果
网友评论