我有以下控制器
@Controller
@RequestMapping("/project/view.html")
public class ProjectViewController {
private static final String viewName = "projectView";
@RequestMapping(method = RequestMethod.GET)
public String showPage(Model model,
@RequestParam(value="id",required=false) Long id) {
//code.....
return viewName;
}
}
Run Code Online (Sandbox Code Playgroud)
我的views.properties包含
projectView.(class)=org.springframework.web.servlet.view.JstlView
projectView.url=/WEB-INF/jsp/project/view.jsp
Run Code Online (Sandbox Code Playgroud)
一切都按预期工作.
但我需要更改方法以返回View(),因为如果出现故障,我必须将RedirectView()返回到某个错误页面.所以我把方法改为:
@Controller
@RequestMapping("/project/view.html")
public class ProjectViewController {
private static final String viewName = "projectView";
@RequestMapping(method = RequestMethod.GET)
public View showPage(Model model,
@RequestParam(value="id",required=false) Long id) {
//code.....
return new JstlView(viewName);
}
}
Run Code Online (Sandbox Code Playgroud)
但在这种情况下,我得到一个NPE:
java.lang.NullPointerException
at org.springframework.web.context.support.WebApplicationObjectSupport.getServletContext(WebApplicationObjectSupport.java:121)
at org.springframework.web.servlet.view.JstlView.exposeHelpers(JstlView.java:133)
at org.springframework.web.servlet.view.InternalResourceView.renderMergedOutputModel(InternalResourceView.java:209)
at org.springframework.web.servlet.view.AbstractView.render(AbstractView.java:257)
at org.springframework.web.servlet.DispatcherServlet.render(DispatcherServlet.java:1183)
at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:902)
at …Run Code Online (Sandbox Code Playgroud) 我正在对批处理脚本进行最后的修改,该脚本将本地编辑的网站的内容传输到Internet.
该脚本在控制台窗口中打开,并输出管理员需要查看的大量内容,以防出现问题.但是,在这种情况下,输出将作为电子邮件发送,因此无需显示输出并使不必要地运行更新的用户感到困惑.我只需要显示几行(比如"开始同步......"和"同步完成").
任何人都可以想到一种在批处理脚本中停止输出的方法吗?有点"回声"?
一个简单的
my_batch_file > nul
Run Code Online (Sandbox Code Playgroud)
不会削减它,因为正如我所说,我需要展示一些事情.
每当我使用十六进制值时,我会在头脑中或在转换器的帮助下将转换(如果需要)转换为十进制.好吧,我在想,如果你的工作时间足够长并习惯了十六进制,那么你只是"看到"这个值(无论这意味着什么),就像读小数一样?我的意思是你在一段时间之后能够像基数10那样容易地读取基数16的值吗?当我用十六进制值编写代码时,我这样做是因为它看起来很性感和坏蛋(有时因为8位适合两位数,这有时会有所帮助),而不是因为我觉得它们对它们感觉很舒服.这样我就可以知道在尝试习惯十六进制时是否有任何意义,有一天能够轻松地使用它们.
我的datagridview中有一个列是一个组合框列.我想按它的显示值(即文本)而不是它的值(在这种情况下,来自数据库的int列表)进行排序.
我怎样才能做到这一点?
我正在尝试在Django中重构一个相当重要的视图函数.浮动的变量太多了,这是一个巨大的功能.
理想情况下,我想将视图模块化为逻辑函数.但是,我必须传递函数上下文以便轻松访问变量.
例如:
def complex_view(request, slug):
some complex logic which creates variable abc ...
...
some more complex logic which uses variable abc ...
...
etc.
Run Code Online (Sandbox Code Playgroud)
应该变得像:
def complex_view(request, slug):
process_X()
...somehow pass variables and context to next function...
process_Y()
...
etc.
def process_X():
...
def process Y():
...
Run Code Online (Sandbox Code Playgroud)
我可以想到几种方法来实现这一点,其中一些方法在本页中有所指出:http: //mail.python.org/pipermail/tutor/2009-February/067506.html
一个.主视图中定义的子功能.这看起来很糟糕,因为很难分辨哪些变量是共享的,哪些不是.
湾 传递locals()中作为字典.这也是kludgey,因为现在有两种不同的方式来访问变量:xyz和contextDict['xyz'].你必须在呼叫中使用一个N,并N+1在堆栈中调用下一个.
C.暴力将所有变量传递给每个函数调用并返回相关的变量.当涉及到很多变量时,这变得非常乏味.
d.在C++/C#中,我只需创建一个类MyComplexViewContext,定义所有共享变量,并创建成员函数来执行工作.然后你可以使用self.xyz该类中的所有内容.我想我也可以在Python中使用这个方法.不知道这是不是最好的方法.
你对Python/Django中首选的方法有什么看法?
我不知道这是否可行,但在我的一些单元测试中,我最终用相同的参数初始化不同的对象.我希望能够将这些参数存储在某个变量中,并使用该变量初始化多参数对象构造函数,而不是执行以下操作:
Thing thing1 = new Thing(arg1, arg2, arg3, arg4);
Thing thing2 = new Thing(arg1, arg2, arg3, arg4);
Thing thing3 = new Thing(arg1, arg2, arg3, arg4);
Run Code Online (Sandbox Code Playgroud)
我可以做以下事情:
MagicalArgumentsContainer args = (arg1, arg2, arg3, arg4);
Thing thing1 = new Thing(args);
Thing thing2 = new Thing(args);
Thing thing3 = new Thing(args);
Run Code Online (Sandbox Code Playgroud)
有没有办法在没有覆盖Thing的构造函数的情况下执行此操作来获取一个手动爆炸并从中获取参数的列表?也许一些C#语法糖?
我有几个自己的Javascript库,可以很好地完善我的HTML页面,我希望将它们包含在我的gsp页面中,特别是我的应用程序的登陆页面.我试图把它们放在views文件夹中,web-app/js并且$APP_HOME/scripts,但是当我打开我的index.gsp中的脚本不露面.
我也在我的代码中尝试了各种替代方案,但都没有...
<script src="mylib.js" type="text/javascript"></script>
<script src="js/mylib.js" type="text/javascript"></script>
<script src="scripts/mylib.js" type="text/javascript"></script>
Run Code Online (Sandbox Code Playgroud)
我确信有一种聪明的grails方式可以实现这一点,但我真的只想要一个位置,我可以放置一些样板代码,我可以在我的应用程序中使用.考虑到约定而不是配置,预期的做法是什么?
我已经实现了一个UITableView,它在我的iPhoneApp中显示为子视图.现在这应该是类似于远程提示器的东西,所以我想自动滚动这个东西,直到最后一个单元格在那里.
我正在玩-scrollToRowVisible,但这似乎不起作用.任何人都可以在这里给我一个提示或指出一些例子吗?
我需要在OSX上找出Cocoa中NSString的像素长度,我发现了一些链接描述了如何使用IPhone sdk做到这一点,但我没有看到任何关于如何在不针对iPhone时做到这一点.任何人都可以链接到一些相关的文档.我确实在NSString文档中找到了任何内容.
我需要我的应用程序在所有Android版本上运行,但Contacts API在2.0中更改.
在SDK 1.6及更早版本中,我使用android.provider.Contacts来查询联系人DB,但这在2.0中不起作用
相反,对于2.0我使用android.provider.ContactsContract.这提出了一个问题:当我有ContactsContract的代码时,我的应用程序将不会为1.6及更早版本构建.
我是否需要有两个不同版本的应用程序(一个用于<= 1.6,一个用于2.0及更高版本)或者有没有办法避免这样做?
c# ×2
java ×2
.net ×1
android ×1
arguments ×1
batch-file ×1
cocoa ×1
contacts ×1
decimal ×1
django ×1
frameworks ×1
grails ×1
gsp ×1
hex ×1
iphone ×1
javascript ×1
macos ×1
objective-c ×1
parameters ×1
python ×1
spring ×1
string ×1
uitableview ×1
windows ×1
winforms ×1