我在理解Spring 3 MVC中的表单提交方式时遇到了问题.
我想要做的是创建一个控制器,它将获取用户的名字并显示给他.不知怎的,我已经做到了,但我真的不明白它是如何工作的.所以..
我有一个看起来像这样的表格:
<form:form method="post" modelAttribute="person">
<form:label path="firstName">First name</form:label>
<form:input path="firstName" />
<br />
<form:label path="lastName">Last name</form:label>
<form:input path="lastName" />
<br />
<input type="submit" value="Submit" />
</form:form>
Run Code Online (Sandbox Code Playgroud)
我也有一个看起来像这样的控制器:
@Controller
public class HomeController {
@RequestMapping(value = "/", method = RequestMethod.GET)
public String showHelloPage(Model model) {
model.addAttribute("person", new Person());
return "home";
}
@RequestMapping(value = "/", method = RequestMethod.POST)
public String sayHello(Person person, Model model) {
model.addAttribute("person", person);
return "home";
}
}
Run Code Online (Sandbox Code Playgroud)
要向用户显示欢迎消息,请在JSP页面中使用以下代码:
<c:if test="${not empty person.firstName and not empty person.lastName}"> …Run Code Online (Sandbox Code Playgroud) 在Java中,我们有静态类Math.您不需要创建其对象以使其静态.另一个是随机类.我们不需要创建它的实例,为什么它也不是静态的呢?我的课程经常使用随机麻木,并且当必须在每个类中创建字段rand以生成随机数时会生气.那为什么不是静态的呢?
我有以下代码.它保存文件但内容为空.它出什么问题了?
public void saveMap() {
String sb = "TEST CONTENT";
JFileChooser chooser = new JFileChooser();
chooser.setCurrentDirectory(new File("/home/me/Documents"));
int retrival = chooser.showSaveDialog(null);
if (retrival == JFileChooser.APPROVE_OPTION) {
try {
FileWriter fw = new FileWriter(chooser.getSelectedFile()+".txt");
fw.write(sb.toString());
} catch (Exception ex) {
ex.printStackTrace();
}
}
}
Run Code Online (Sandbox Code Playgroud) 我刚开始学习如何用Python创建GUI应用程序.我决定使用Gtk版本3.根据http://python-gtk-3-tutorial.readthedocs.org/上的(官方?)教程,构建hello world应用程序的正确方法是:
from gi.repository import Gtk
class MyWindow(Gtk.Window):
def __init__(self):
Gtk.Window.__init__(self)
self.set_default_size(200, 100)
self.connect('destroy', Gtk.main_quit)
self.show_all()
MyWindow()
Gtk.main()
Run Code Online (Sandbox Code Playgroud)
在其他教程(http://www.micahcarrick.com/gtk3-python-hello-world.html)中,我发现完全不同的方法是:
from gi.repository import Gtk, Gio
class HelloWorldApp(Gtk.Application):
def __init__(self):
Gtk.Application.__init__(self, application_id="apps.test.helloworld",
flags=Gio.ApplicationFlags.FLAGS_NONE)
self.connect("activate", self.on_activate)
def on_activate(self, data=None):
window = Gtk.Window(type=Gtk.WindowType.TOPLEVEL)
window.set_title("Gtk3 Python Example")
window.set_border_width(24)
label = Gtk.Label("Hello World!")
window.add(label)
window.show_all()
self.add_window(window)
if __name__ == "__main__":
app = HelloWorldApp()
app.run(None)
Run Code Online (Sandbox Code Playgroud)
这个类别中有经验的人能告诉我这些天我应该以什么方式在python中编写Gtk 3应用程序?我已经熟悉编写GUI(在Java的Swing中花了几个月),所以你可以继续使用诸如事件,回调等术语.
这是我的基类:
abstract public class CPU extends GameObject {
protected float shiftX;
protected float shiftY;
public CPU(float x, float y) {
super(x, y);
}
Run Code Online (Sandbox Code Playgroud)
这是它的一个子类:
public class Beam extends CPU {
public Beam(float x, float y, float shiftX, float shiftY, int beamMode) {
try {
image = ImageIO.read(new File("/home/tab/Pictures/Beam"+beamMode+".gif"));
} catch (Exception e) {
e.printStackTrace();
}
this.x = x;
this.y = y;
this.shiftX = shiftX;
this.shiftY = shiftY;
}
Run Code Online (Sandbox Code Playgroud)
New构造函数突出显示,它说:
Constructor CPU in class CPU cannot be applied to given types: …Run Code Online (Sandbox Code Playgroud) 假设我想为3个整数分配内存:
int *pn = malloc(3 * sizeof(*pn));
Run Code Online (Sandbox Code Playgroud)
现在为我们分配值:
pn[0] = 5550;
pn[1] = 11;
pn[2] = 70000;
Run Code Online (Sandbox Code Playgroud)
要访问第二个值我做:
pn[1]
Run Code Online (Sandbox Code Playgroud)
但[n]运算符只是*(a + n)的快捷方式.那么这意味着我在索引后访问第一个字节.但int是4个字节长,所以我不应该这样做
*(a+sizeof(*a)*n)
Run Code Online (Sandbox Code Playgroud)
代替?它是如何工作的?
我有一个数组列表:
private List<GameObject> gameObjects = new CopyOnWriteArrayList<GameObject>();
Run Code Online (Sandbox Code Playgroud)
GameObject可以是3类中的一个:Spaceship,Beam和Asteroid.它们都很相似所以我将它们保存在一个数组中.然而,太空飞船有另外的方法射击,在其他线程(被称为ShootRunnable)中每100ms使用一次.所以我想迭代它,Spaceship因为其他没有实现射击方法.实现这一目标的最佳方法是什么?
for (GameObject ob : gameObjects) {
if (ob instanceof Spaceship) {
ob.shoot();
}
}
Run Code Online (Sandbox Code Playgroud)
我可以使用上面的内容迭代它吗?只是使用演员或其他什么?请帮忙.
所以,在Python 2中很明显.但是在Python 3中我有点困惑.
>>> import builtins
>>> dir(builtins)
['ArithmeticError', 'AssertionError', 'AttributeError', 'BaseException', 'BlockingIOError', 'BrokenPipeError', 'BufferError', 'BytesWarning', 'ChildProcessError', 'ConnectionAbortedError', 'ConnectionError', 'ConnectionRefusedError', 'ConnectionResetError', 'DeprecationWarning', 'EOFError', 'Ellipsis', 'EnvironmentError', 'Exception', 'False', 'FileExistsError', 'FileNotFoundError', 'FloatingPointError', 'FutureWarning', 'GeneratorExit', 'IOError', 'ImportError', 'ImportWarning', 'IndentationError', 'IndexError', 'InterruptedError', 'IsADirectoryError', 'KeyError', 'KeyboardInterrupt', 'LookupError', 'MemoryError', 'NameError', 'None', 'NotADirectoryError', 'NotImplemented', 'NotImplementedError', 'OSError', 'OverflowError', 'PendingDeprecationWarning', 'PermissionError', 'ProcessLookupError', 'ReferenceError', 'ResourceWarning', 'RuntimeError', 'RuntimeWarning', 'StopIteration', 'SyntaxError', 'SyntaxWarning', 'SystemError', 'SystemExit', 'TabError', 'TimeoutError', 'True', 'TypeError', 'UnboundLocalError', 'UnicodeDecodeError', 'UnicodeEncodeError', 'UnicodeError', 'UnicodeTranslateError', 'UnicodeWarning', 'UserWarning', 'ValueError', 'Warning', 'ZeroDivisionError', '__build_class__', '__debug__', '__doc__', '__import__', …Run Code Online (Sandbox Code Playgroud) 我有一个类,它代表我简单游戏中的每个对象(玩家,敌人,横梁等-它们都有很多共同点,例如速度,位置,dmg)。因此,我上了名为Thing的课程。看起来是这样的:
public abstract class Thing {
private Image image;
private float x;
private float y;
private float speed;
private final int WIDTH;
private final int HEIGHT;
public Thing(String filename, float x, float y, float speed) {
try {
Image image = ImageIO.read(new File(filename));
} catch (Exception e) {}
this.x = x;
this.y = y;
this.speed = speed;
WIDTH = image.getWidth(null);
HEIGHT = image.getHeight(null);
}
//Zwraca ksztalt do sprawdzania czy contains...
public Rectangle2D getShade() {
return new Rectangle2D.Float(x, y, WIDTH, HEIGHT); …Run Code Online (Sandbox Code Playgroud) 我很好奇这一个.创建一个模仿按钮的div(将"click"事件绑定到它)是否对用户友好?我的意思是,所有移动浏览器是否都准确地对待它并在点击div时始终触发事件?用普通按钮替换这种结构会增加移动设备的响应能力吗?
java ×6
python ×2
c ×1
constructor ×1
file-io ×1
forms ×1
gtk3 ×1
html ×1
javascript ×1
jfilechooser ×1
jquery ×1
keyword ×1
nonetype ×1
oop ×1
pointers ×1
python-3.x ×1
random ×1
spring ×1
spring-mvc ×1
swing ×1