
BAT的后端开发工程师不请自来。
这个问题的本质其实是在前后端分离的大趋势下,前后端开发者如何将各自的代码串联起来,对外发布一个完整的服务。
接下来,我们就分别从前端和后端来介绍。
后端
后端又称服务端,是负责接收前端的请求,然后进行逻辑处理,去读写数据库,最后将结果返回的功能节点。目前在前后端分离的大前提下,不仅是java,php,Python等等大多是通过开放api/
这个url下,path分别为A和B,然后这两个controller内又各自有两个方法,指定的path注解分别为A1,A2,B1,B2,那么当前端调用api/A/A1
的时候,就会去执行Acontroller下的A1函数,然后再将这个函数的执行结果作为response返回给前端了。前端
前端通常负责的工作除了渲染界面,还有两部分组成:
1捕捉用户的 *** 作,
2根据 *** 作请求后端api并获取结果展示给用户。
我们前面介绍的前后端交互,就是第二部分的工作。前端通过调用后端提供的api来传递和获取数据,最后再将数据渲染到页面上。
不过值得提一句的是,html并不负责与java交互,从基础来说,html只负责页面架构,具体捕捉用户 *** 作,获取数据等步骤,是由JavaScript来实现的。
html可以通过使用表单将数据传到指定的位置,java中也可以通过使用Servlet(也就是简单的java类继承HttpServlet,重写doGet,doPost方法)。
具体事例如下:
html页面:
<%@ page language="java" import="javautil" pageEncoding="UTF-8"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 401 Transitional//EN">
<html>
<head>
<title>Demo</title>
<meta http-equiv="pragma" content="no-cache">
<meta http-equiv="cache-control" content="no-cache">
<meta http-equiv="expires" content="0">
<meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
<meta http-equiv="description" content="This is my page">
</head>
<body>
<form action="demoServlet" method="post">
<input type="text" name="name"/>
<select name="xiala">
<option value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
</select>
<input type="submit" value="提交"/>
</form>
</body>
</html>
Servlet代码:
public class DemoServlet extends HttpServlet {
@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp)
throws ServletException, IOException {
String name = reqgetParameter("name");
String xiala = reqgetParameter("xiala");
Systemoutprintln(name+","+xiala);
}
@Override
protected void doPost(HttpServletRequest req, HttpServletResponse resp)
throws ServletException, IOException {
superdoGet(req, resp);
}
}
当点击提交按钮时,界面会去调用DemoServlet这个类里的doPost方法,执行对应的代码,java类通过使用getParameter根据参数名获取页面传过来的值。
两种方式:
1、纯Java,用POI来做
2、用JNA调用word接口,根据office api来做
第一种呢对于java开发来说相对简单,但是需要学POI,而且估计有些格式控制不好。第二种要学习JNA,而且需要边做变差word的office api。
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)