我有一个基于Spring java配置的Web应用程序与(jsp)视图解析器.现在,我想在用户点击app中的excel图标时显示包含一些数据的Excel表格.在互联网上我只找到了基于xml的弹簧配置,用于我不熟悉的excel视图.我在一定程度上解码了,并且非常接近完成我的任务.以下是我得到的.
我有类似的控制器和主页,如下链接:
http://static.springsource.org/spring/docs/3.0.0.M3/reference/html/ch17s06.html
控制代码:
@Controller
public class ExcelController extends AbstractController {
@Override
@RequestMapping(value = "/Excel", method = RequestMethod.POST)
protected ModelAndView handleRequestInternal(HttpServletRequest request,
HttpServletResponse response) throws Exception {
BufferedReader in = null;
try {
URL oracle = new URL("example.com");
URLConnection yc =null;
yc = oracle.openConnection();
in = new BufferedReader(
new InputStreamReader(
yc.getInputStream()));
}
catch(Exception e){
System.err.println(e);
}
Map map = new HashMap();
map.put("input", in);
return new ModelAndView("xl", map);
}
Run Code Online (Sandbox Code Playgroud)
}
查看代码:
public class ExcelReportView extends AbstractExcelView{
@Override
protected void buildExcelDocument(Map …Run Code Online (Sandbox Code Playgroud) 尝试在java中读取消息时出现以下错误
Exception in thread "main" com.google.protobuf.InvalidProtocolBufferException: Protocol message tag had invalid wire type.
at com.google.protobuf.InvalidProtocolBufferException.invalidWireType(InvalidProtocolBufferException.java:78)
at com.google.protobuf.UnknownFieldSet$Builder.mergeFieldFrom(UnknownFieldSet.java:498)
at com.google.protobuf.GeneratedMessage$Builder.parseUnknownField(GeneratedMessage.java:438)
FileInputStream fis = new FileInputStream("F:/Newfolder/sample_message.txt");
Nt nlc = Nt.parseFrom(fis);
if(nlc.hasMessageId())
{
System.out.println("MessageId: "+nta2sse.getMessageId());
}
Run Code Online (Sandbox Code Playgroud)
我正在接受例外 if(nlc.hasMessageId())
这是完整的堆栈跟踪.
Exception in thread "main" com.google.protobuf.InvalidProtocolBufferException: Protocol message tag had invalid wire type.
at com.google.protobuf.InvalidProtocolBufferException.invalidWireType(InvalidProtocolBufferException.java:78)
at com.google.protobuf.UnknownFieldSet$Builder.mergeFieldFrom(UnknownFieldSet.java:498)
at com.google.protobuf.GeneratedMessage$Builder.parseUnknownField(GeneratedMessage.java:438)
at com.soeasy.aanta.nta.sse.NtaSse$Nta2Sse$Builder.mergeFrom(NtaSse.java:523)
at com.soeasy.aanta.nta.sse.NtaSse$Nta2Sse$Builder.mergeFrom(NtaSse.java:1)
at com.google.protobuf.AbstractMessage$Builder.mergeFrom(AbstractMessage.java:1)
at com.google.protobuf.AbstractMessageLite$Builder.mergeFrom(AbstractMessageLite.java:212)
at com.google.protobuf.AbstractMessage$Builder.mergeFrom(AbstractMessage.java:746)
at com.google.protobuf.AbstractMessage$Builder.mergeFrom(AbstractMessage.java:1)
at com.google.protobuf.AbstractMessageLite$Builder.mergeDelimitedFrom(AbstractMessageLite.java:282)
at com.google.protobuf.AbstractMessage$Builder.mergeDelimitedFrom(AbstractMessage.java:760)
at com.google.protobuf.AbstractMessageLite$Builder.mergeDelimitedFrom(AbstractMessageLite.java:288)
at com.google.protobuf.AbstractMessage$Builder.mergeDelimitedFrom(AbstractMessage.java:752)
at com.soeasy.aanta.nta.sse.NtaSse$Nta2Sse.parseDelimitedFrom(NtaSse.java:338)
at com.soeasy.aanta.nta.sse.NtaSseServer.main(NtaSseServer.java:60)
Run Code Online (Sandbox Code Playgroud)
并且示例_message.txt具有以下内容:
message_id: …Run Code Online (Sandbox Code Playgroud) 我有json发布数据与下面的模板
{
"themeId" : JSONString,
"themeName" : JSONString,
"tables" : [{
"tableName" : JSONString,
"records" : [{
"recordVersion" : JSONString,
"tableItems" : []
}]
}]
}
Run Code Online (Sandbox Code Playgroud)
在Java方面,我有这样的REST API:
@POST
@Path("/{themeId}")
@Consumes({MediaType.APPLICATION_JSON})
public Response postTheme( @PathParam("themeId") String themeId, ThemeDictionary dictionary) throws InterruptedException {
//code to handle
}
Run Code Online (Sandbox Code Playgroud)
当发布数据小于2 MB但如何处理大于2 MB的数据大小时,它工作正常.
问题
1)我应该加入分页.
2)如果我把json分成两半,那么每一半都不是有效的json.那么,我应该接受字符串并在服务器端连接吗?
3)是否有任何好的例子来处理这种情况
4)寻找可以处理大小小于或大于2 MB的json数据的方法
我是REST的新手.我想知道何时使用get方法以及何时使用post方法.在我的文学调查过程中,我发现了这些知识.
实际上,当我搜索HTTP get和post方法时,我读到了get不编码URL并对URL进行后编码
当我搜索其余的get和post方法时,我读到get方法用于从服务器检索数据,post方法是向服务器添加一些数据.
但我也读过,休息只不过是使用HTTP的惯例.
所以我觉得有些事情在这里是矛盾的.HTTP的方法有何不同?
请澄清.此外,欢迎任何有关何时使用get和post方法的建议
从中获取此信息的资源:
https://www.ibm.com/developerworks/webservices/library/ws-ful/
我正在尝试使用maven和spring运行动态Web项目.我有一个使用jquery-1.7.1.min.js的代码.但我看到文件中的编译错误.以下是错误的屏幕截图.
有没有人遇到同样的问题或知道如何解决它

谢谢
我知道在java中的一种方法:
Calendar c5 = Calendar.getInstance();
c5.add(Calendar.MONTH, -6);
c5.getTime(); //It will give YYYYMMDD format three months ago.
Run Code Online (Sandbox Code Playgroud)
有没有办法在javascript中执行此操作.我知道我可以使用Date d = new Date(); 解析它并做一些代码来获取格式.但现在我不想做解析并获得三个月前的约会.
这就是我现在的工作正常.它所做的只是一个返回项目对象数组的市场类:
我有上课的市场
class market {
public ArrayList<Items> createItems(HashMap<String,String> map) {
ArrayList<Items> array = new ArrayList<Items>();
for (Map.Entry<String, String> m : map.entrySet()) {
Item item = new Item();
item.setName(m.key());
item.setValue(m.value());
array.add(item);
}
return array;
}
}
Run Code Online (Sandbox Code Playgroud)
class Item是带有getter和setter的名称和值的简单类
以下是我的配置文件的外观:
@Configuration
public class MarketConfig {
@Bean
public Market market() {
return new Market();
}
}
Run Code Online (Sandbox Code Playgroud)
我想如何改变我的代码:(原因:我不想要
Item item = new Item();
Run Code Online (Sandbox Code Playgroud)
在那时的方法.我希望Spring将它注入市场)
class market {
public Item item;
//getters and setters for item
public ArrayList<Items> createItems(HashMap<String,String> map) {
ArrayList<Items> array = new …Run Code Online (Sandbox Code Playgroud) 我在存储库中有代码。现在我想创建一个作业,它将从存储库构建代码并将其部署在两台服务器上。
现在我创建了两个具有完全相同配置的作业。唯一的变化是它需要部署的服务器。
单份工作可以做到这一点吗?
可能重复:
是否可以找到两个在O(n)时间内差异最小的数字
例如,在[4, 2, 7, 11, 8],算法应该返回abs(7-8) = 1.
蛮力方式为O(n 2),排序将给出O(nlogn).有更有效的方法吗?
谢谢
我在json下面:
"[{\"movieName\":\"A\",\"Leadactor\":\"\",\"leadActress\":\"\",\"movieTitle\":\"\",\"hero\":\"\",\"heroine\":\"\",\"source\":\"IMDB\"}," +
"{\"movieName\":\"\",\"Leadactor\":\"\",\"leadActress\":\"\",\"movieTitle\":\"B\",\"hero\":\"B1\",\"heroine\":\"B2\",\"source\":\"Netflix\"}," +
"{\"movieName\":\"C\",\"Leadactor\":\"C1\",\"leadActress\":\"C2\",\"movieTitle\":\"\",\"hero\":\"\",\"heroine\":\"\",\"source\":\"IMDB\"}," +
"{\"movieName\":\"D\",\"Leadactor\":\"D1\",\"leadActress\":\"D2\",\"movieTitle\":\"\",\"hero\":\"\",\"heroine\":\"\",\"source\":\"IMDB\"}," +
"{\"movieName\":\"\",\"Leadactor\":\"\",\"leadActress\":\"\",\"movieTitle\":\"E\",\"hero\":\"E1\",\"heroine\":\"E2\",\"source\":\"Netflix\"}]";
Run Code Online (Sandbox Code Playgroud)
我正在使用jackson解析器将其映射到一个类:
我希望movieName和movieTitle映射到java类中的Name属性.所以我写了下面的课程:
public static class MovieData {
@JsonProperty("Name")
private String name;
@JsonSetter({"movieName"})
private void setMovieName(final String name) {
if((name != null) && (! name.equals(""))) {
setNameInternal(name);
}
}
@JsonSetter("movieTitle")
private void setMovieTitle(final String name) {
if((name != null) && (! name.equals(""))) {
setNameInternal(name);
}
}
private void setNameInternal(final String name) {
this.name = name;
}
Run Code Online (Sandbox Code Playgroud)
}
在我真正的json中有很多字段,比如movieName,movieTitle,我想将其标准化为一个通用名称.
有没有像下面这样可以减少代码重复的简单语法:
public static class MovieData {
@JsonProperty("Name")
private String name;
@JsonSetter(value = { …Run Code Online (Sandbox Code Playgroud) java ×6
java-ee ×3
javascript ×2
json ×2
spring ×2
spring-mvc ×2
algorithm ×1
arrays ×1
eclipse ×1
gson ×1
http ×1
jackson ×1
javabuilders ×1
jenkins ×1
jersey ×1
jquery ×1
maven ×1
rest ×1
web-services ×1
websphere ×1